Skip to main content

Install from RPM packages

For production deployments on RPM-based systems (Rocky Linux, AlmaLinux), you can install PatchBase from our package repository.

Set up the repository

Create the repo file:

sudo tee /etc/yum.repos.d/patchbase.repo << 'EOF'
[patchbase]
name=Patchbase
baseurl=https://packages.patchbase.net/rpm/el/$releasever/$basearch/
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.patchbase.net/keys/patchbase.asc
EOF

Install the server

sudo dnf install patchbase-server

This installs:

  • The patchbase-server binary at /usr/bin/patchbase-server
  • A systemd service at /usr/lib/systemd/system/patchbase-server.service
  • A sample config at /etc/patchbase-server/config.example.yaml

Configure the server

sudo cp /etc/patchbase-server/config.example.yaml /etc/patchbase-server/config.yaml
sudo vi /etc/patchbase-server/config.yaml

At minimum, set the following:

encryption_key: "<openssl rand -hex 32>"

api:
jwt_secret_key: "<openssl rand -hex 32>"

database:
url: "postgres://user:password@localhost:5432/patchbase?sslmode=disable"

Make sure PostgreSQL is running and the patchbase database exists before proceeding.

Run migrations

sudo patchbase-server migrate

Start the service

sudo systemctl enable --now patchbase-server

Check it's running:

sudo systemctl status patchbase-server

The server should now be listening on port 5199. If you have a firewall, open it:

sudo firewall-cmd --add-port=5199/tcp --permanent
sudo firewall-cmd --reload

Install the agent

On each host you want to monitor:

sudo dnf install patchbase-agent

Then enroll the agent with a registration token you create from the dashboard:

sudo patchbase-agent enroll http://<server-ip>:5199 pb_reg_<your-token>

Enable the systemd timer so the agent syncs automatically:

sudo systemctl enable --now patchbase-agent.timer

See the agent onboarding guide for full instructions.