-
Notifications
You must be signed in to change notification settings - Fork 0
Installation Docker
RustRconServerManager ships as a self-contained Docker Compose stack — the app container plus a bundled MariaDB container. No external database or reverse proxy is required to get started.
- Docker and Docker Compose
- A free port on the host (default
5000)
No need to clone the repository — the installer script downloads docker-compose.yml, generates a .env with random credentials, pulls the published image, and starts the stack:
mkdir rust-rcon-server-manager && cd rust-rcon-server-manager
curl -fsSL https://raw.githubusercontent.com/Xenne93/RustRconServerManager/main/install.sh | bashOr, if you'd rather clone the repo first:
git clone https://github.com/Xenne93/RustRconServerManager.git
cd RustRconServerManager
./setup.sh # generates .env with random credentials
docker compose up -dOpen http://localhost:5000 (or whichever APP_PORT you chose) in your browser. The first person to open the panel gets to create the admin account — don't expose the port publicly until you've completed this step.
If you'd rather configure .env by hand instead of running setup.sh, copy .env.example to .env and fill in real values yourself.
docker compose up -d
│
├── app (RustRconServerManager, port 5000)
│ depends on ──► mariadb (healthy)
└── mariadb (persistent volume: db_data)
-
apppulls the published image fromghcr.ioby default. To build from source instead, editdocker-compose.yml: comment out theimage/pull_policylines and uncomment thebuild:block. -
mariadbstores its data in thedb_datanamed volume — it survivesdocker compose downand image updates. Onlydocker compose down -vremoves it. - Uploaded application data (map images, etc.) lives in the
app_datanamed volume.
All configuration lives in .env (see .env.example in the repo for the full list with comments):
| Variable | Purpose |
|---|---|
IMAGE_TAG |
Which published image tag to run (latest or a specific release) |
APP_PORT |
Host port the app is exposed on |
PATHBASE |
Optional path prefix if running behind a reverse proxy at a subpath |
DB_NAME / DB_USER / DB_PASSWORD / MARIADB_ROOT_PASSWORD
|
Bundled MariaDB credentials |
JWT_KEY / RCON_ENCRYPTION_KEY
|
Long random values — never reuse the example values |
SMTP_* |
Needed for the email-based "forgot password" flow. Leave SMTP_HOST blank to disable it (see [[Resetting Your Password |
STEAM_API_KEY |
Optional — player profile/VAC-ban lookups |
PROXYCHECK_API_KEY / PROXYCHECK_HMAC_KEY
|
Optional — VPN/proxy detection in Server Protection |
AUTO_UPDATE / SKIP_AUTO_UPDATE
|
Self-update behavior on container restart |
docker compose pull
docker compose up -dThe container also checks GitHub Releases on every restart and can self-update in place. Either way, the database volume is untouched by updates.
Once you've logged in, head to Adding a Server to connect your first Rust server.
For backups, running behind a reverse proxy, troubleshooting, and production recommendations, see docs/DOCKER_DEPLOYMENT.md in the repository.