You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
lenmonitor/README.md

3.6 KiB

Lenmonitor is web service that stores and regularly updates a list of instances of various self-hosted services.

Attention Beta version!

Lenmonitor is in beta version, so it may not have all the basic functionality or work as planned.

Features

  • Does not use JavaScript or Cookies.
  • Has its own API.
  • Open source and self-hosted.
  • Doesn't even require registration to add a server.

Launch your own server

  1. If you don't already have Docker installed, do so:
apt-get install -y docker docker.io docker-compose
  1. Use a file like this docker-compose.yml:
version: "2"

services:
  lenmonitor:
    image: git.lcomrade.su/root/lenmonitor:latest
    restart: always
    environment:
      # All parameters are optional
      - LENMONITOR_ADDRESS=:80                    # ADDRES:PORT for HTTP server.
      - LENMONITOR_DB_DRIVER=sqlite3              # Currently supported drivers: 'sqlite3' and 'postgres'.
      - LENMONITOR_DB_SOURCE=/data/lenmonitor.db  # DB source.
      - LENPASTE_DB_MAX_OPEN_CONNS=25             # Maximum number of connections to the database.
      - LENPASTE_DB_MAX_IDLE_CONNS=5              # Maximum number of idle connections to the database.
      - LENMONITOR_ROBOTS_DISALLOW=false          # Prohibits search engine crawlers from indexing site using robots.txt file.
      - LENMONITOR_ADD_SERVERS_PER_5MIN=10        # Maximum number of servers that can be added in 5 minutes from one IP. If 0 disable rate-limit.
      - LENMONITOR_ADMIN_NAME=                    # Name of the administrator of this server.
      - LENMONITOR_ADMIN_MAIL=                    # Email of the administrator of this server.
    volumes:
      # /data/lenmonitor.db - SQLite DB if used.
      - "${PWD}/data:/data"
      - "/etc/timezone:/etc/timezone:ro"
      - "/etc/localtime:/etc/localtime:ro"
    ports:
      - "80:80"
  1. Execute while in the directory where docker-compose.yml is located:
docker-compose pull && docker-compose up -d

TIP: If you want to install updates, run: docker-compose pull && docker-compose up -d && docker system prune -a -f

Build from source code

On Debian/Ubuntu:

sudo apt update
sudo apt -y install git make gcc golang
git clone https://git.lcomrade.su/root/lenmonitor.git
cd ./lenmonitor/
make

You can find the result of the build in the ./dist/ directory.

Build Docker image

Why is it necessary? An official image may not support your architecture e.g. ARM64, PowerPC, etc. So you can build your own image to run on an officially unsupported architecture (of course you have to rebuild it every time you update Lenpaste).

On Debian/Ubuntu:

sudo apt update
sudo apt -y install git docker docker.io
git clone https://git.lcomrade.su/root/lenmonitor.git
cd ./lenmonitor/
git checkout vX.X
sudo docker build -t localhost/lenmonitor:latest ./

The localhost/lenmonitor:latest image should now have appeared on your local machine. You can use it in docker-compose.yml or copy it to another machine.

Other documentation

For instance administrators:

For developers:

Bugs and Suggestion

If you have any questions or suggestions, you can write here:

Donate

All donations will go to Leonid Maslakov, for now the sole developer: