Installation guide

Step-by-step instructions for installing the Xcellerate RMM server using Docker Compose.

Overview

The fastest way to deploy Xcellerate RMM is with Docker Compose. This guide walks you through the entire process — from preparing the host to verifying the running server. If you prefer a bare-metal install, refer to the advanced installation notes at the end.

Make sure your host meets the System requirements before proceeding.

Key concepts

  • Docker Compose stack — the server ships as a set of containers: web UI, API, background workers, PostgreSQL, and Redis.
  • Environment file (.env) — a single file that holds all configuration: database credentials, TLS settings, SMTP relay, and licence key.
  • Data volumes — persistent Docker volumes for the database and uploaded files, ensuring your data survives container restarts.

Step-by-step installation

1

Prepare the host

Install Docker and Docker Compose on your server. On Ubuntu: sudo apt update && sudo apt install -y docker.io docker-compose-v2. Then add your user to the docker group: sudo usermod -aG docker $USER and log out/in.

2

Download the Xcellerate package

Clone the deployment repository: git clone https://github.com/rmmlabs/xcellerate-rmm.git && cd xcellerate-rmm. This contains the docker-compose.yml and a sample .env.example file.

3

Configure environment variables

Copy the sample file: cp .env.example .env. Open .env in your editor and set at minimum: SERVER_HOSTNAME, DB_PASSWORD, and ADMIN_EMAIL. The file is well-commented — each variable explains its purpose.

4

Start the stack

Run docker compose up -d. Docker will pull the images (~1.2 GB on first run), create volumes, and start all services. The process usually takes 2–4 minutes.

5

Verify the installation

Open https://help.comodo.com/uploads/Comodo%20One/6e175807820c03aca9839d66e42cbef4/5eac818f1e1c4adc19d335055b06586b/86591a8e70c8559c6cbe59827974324a/c1_rmm_install6.png in a browser. You should see the Xcellerate RMM login screen. If using a self-signed certificate, your browser will show a security warning — this is expected.

The Xcellerate RMM login screen after a successful installation

Enabling TLS with Let's Encrypt

For production, enable automatic TLS. Set TLS_MODE=letsencrypt and [email protected] in your .env file, then restart the stack. The built-in reverse proxy will obtain and renew certificates automatically.

.env
# .env excerpt
SERVER_HOSTNAME=rmm.yourcompany.com
TLS_MODE=letsencrypt
[email protected]

Tips & best practices

  • Always use a fully qualified domain name (FQDN) for SERVER_HOSTNAME — agents rely on it to connect.
  • Set a strong, unique DB_PASSWORD. Avoid special characters that may need escaping in shell contexts.
  • Back up the .env file separately — it contains your database credentials and licence key.
  • Schedule automatic Docker image updates with a cron job or Watchtower to stay on the latest patch releases.
Never expose PostgreSQL (port 5432) or Redis (port 6379) to the public internet. Keep them on a private network or bound to localhost.