Game server hosting
Fast RAM, high-speed internet
Eat lag for breakfast
Try our Rust Server hosting free for 2 days!
Important
Using Docker Desktop with WSL2 on Windows will result in a very slow download!
| Resource | Minimum | Recommended |
|---|---|---|
| CPU | 4 cores | 4+ cores |
| RAM | 8GB | Recommend over 12GB for stable operation |
| Storage | 20GB | 30GB |
Important
.env settings will override the current settings in the server configuration If you do not want that to happen, set GENERATE_SETTINGS=false
Copy the .env.example file to a new file called .env file. Then use either docker compose or docker run
Starting the server with Docker Compose:
services:
rust:
image: indifferentbroccoli/rust-server-docker
restart: unless-stopped
container_name: rustserver
stop_grace_period: 30s
ports:
- 28015:28015
- 28015:28015/udp
- 28016:28016
- 28016:28016/udp
- 28082:28082
environment:
GENERATE_SETTINGS: true
env_file:
- .env
volumes:
- ./server-files:/steamcmd/rustThen run:
docker-compose up -ddocker run -d \
--restart unless-stopped \
--name rustserver \
--stop-timeout 30 \
-p 28015:28015 \
-p 28015:28015/udp \
-p 28016:28016 \
-p 28016:28016/udp \
-p 28082:28082 \
-e GENERATE_SETTINGS=true \
--env-file .env \
-v ./server-files:/steamcmd/rust \
indifferentbroccoli/rust-server-dockerYou can use the following values to change the settings of the server on boot. It is highly recommended you set the following environment values before starting the server:
- RCON_PASSWORD
| Variable | Default | Info |
|---|---|---|
| PUID | 1000 | User ID for file permissions. Run id -u to get your user ID |
| PGID | 1000 | Group ID for file permissions. Run id -g to get your group ID |
| SERVER_NAME | rustserver | The name of your Rust server as it appears in the server browser |
| SERVER_DESCRIPTION | Welcome to your Indifferent Broccoli Rust server | The description shown in the server browser |
| SERVER_SEED | 12345 | World generation seed. Same seed = same map |
| WORLD_SIZE | 3500 | Size of the world map (3000-6000 recommended) |
| MAX_PLAYERS | 50 | Maximum number of players that can connect to the server |
| SERVER_PORT | 28015 | Game port for player connections |
| RCON_PORT | 28016 | The port for RCON (Remote Console) access |
| APP_PORT | 28082 | The port for the Rust+ companion app |
| RCON_PASSWORD | admin | Password for RCON access - CHANGE THIS! |
| SERVER_IDENTITY | Folder name for server data/saves. Defaults to SERVER_NAME if not set | |
| OXIDE_ENABLED | false | Enable Oxide/uMod plugin framework |
| UPDATE_ON_START | true | If set to false, skips downloading and validating server files from Steam on startup |
| PVP | true | Enable PvP combat |
| DECAY_SCALE | 1.0 | Scale for structure decay (0 = no decay, 1 = default) |
| STABILITY | true | Enable structure stability system |
| SAVE_INTERVAL | 600 | Server save interval in seconds |
| RADIATION | true | Enable radiation in radtowns |
| SERVER_SECURE | 1 | Enables VAC and public server listing (1 = enabled, 0 = private/sandbox) |
| SERVER_ENCRYPTION | 2 | Encryption type: 0 = none, 1 = weak, 2 = strong. Weaker may be needed for some mods |
| GAME_MODE | standard | Server game mode: standard, softcore, or hardcore |
| MAX_TEAM_SIZE | Maximum players per team. Leave empty for the server default | |
| SERVER_ERA | Era for primitive mode servers. Leave empty unless running primitive mode | |
| SERVER_TAGS | vanilla | Comma-separated tags shown in the server browser (e.g. vanilla,monthly,pve) |
| MAP_TYPE | Procedural Map | Map level type: Procedural Map, Barren, HapisMountain, SavasIsland, SavasIsland_koth |
| CUSTOM_MAP_URL | Direct URL to a custom map file. When set, overrides MAP_TYPE | |
| SERVER_HEADERIMAGE | HTTP URL to a custom header image for the server browser | |
| SERVER_LOGOIMAGE | HTTP URL to a custom logo image for the server browser | |
| SERVER_URL | Website URL for your server |
Use STARTUP_ARGUMENTS to pass any additional arguments directly to RustDedicated at startup. They are appended after all arguments generated from the environment variables above, so they can override or extend any setting.
STARTUP_ARGUMENTS=+server.tags monthly,vanilla +server.maxplayers 100Note
Variables from Didstopia's image using the RUST_ prefix (e.g. RUST_SERVER_NAME) are still supported as a fallback for backward compatibility, but the clean names shown in the table above are preferred.
This container includes the RCON CLI tool for server management. You can execute RCON commands like:
docker exec rustserver rcon-cli status
docker exec rustserver rcon-cli "say Hello Players!"/steamcmd/rust- Server files, game data, and configuration
28015- Game Port (TCP/UDP)28016- RCON Port (TCP/UDP)28082- Rust+ App Port (TCP)
To build the image yourself:
docker build -t rust-server-docker .For issues and questions, please visit:
This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.
