Install rector-bot-alert on a VPS running Ubuntu 22.04+ or Debian 12+ (x86_64) with Docker available. Everything lives in /opt/rector-bot-alert.
1. Extract the bundle
Download the release tarball from the distribution repository you were invited to, then:
sudo mkdir -p /opt/rector-bot-alert
sudo tar -xzf rector-bot-alert-v<version>-linux-x86_64.tar.gz -C /opt/rector-bot-alert
2. Start Postgres
The bundle ships a docker-compose.yml that runs Postgres 16, listening only on localhost (port 5433):
cd /opt/rector-bot-alert
sudo docker compose up -d postgres
The database is created with user alertbot, password alertbot, database name alertbot.
3. Configure the environment
sudo cp config.env.example .env
sudo nano .env # or any editor
Fill in two values:
DATABASE_URL=postgresql://alertbot:[email protected]:5433/alertbot(the default already matches the compose file above)DISCORD_TOKEN=your bot token (see Discord application)
4. Install the systemd service
The bundle includes alertbot.service:
sudo cp alertbot.service /etc/systemd/system/
sudo systemctl daemon-reload
sudo systemctl enable --now alertbot
First boot
On first start the bot automatically:
- Verifies your license (see Activation — place
license.jsonnext to the binary first). - Creates the database tables and a default configuration — no manual database setup is required.
You can follow startup with:
sudo journalctl -u alertbot -f
A healthy first boot logs:
[rector-bot-alert] license OK: licensee=<your name> app_id=<your application id>
followed by normal startup. If the license file is missing you will see:
[rector-bot-alert] license.json not found next to the program — see https://alertbot.rectorspace.com/docs/activation
and the service stops until the file is in place.
5. Claim ownership
A fresh database has no administrator yet. The first person to run alert.setup in a server the bot is in becomes the owner — their Discord ID is registered permanently. From then on, configuration commands work only for the owner and IDs they authorize.
Run this once, in your admin channel, right after first boot:
alert.setup
If your prefix differs, use
<yourprefix>setup.
Then continue with Configuration.