- slim Debian Bookworm with Wine 10.0
- pre-configured 64-bit Wine prefix
- SCUM server startup script, which
-
- installs/updates steamcmd
-
- installs/updates SCUM dedicated server on startup
- Linux
- Docker.io with docker compose
- 8GB memory (absolute bare minimum, get 16GB or at least 12GB. 32GB or even more for large servers)
- Grab the
docker-compose.yml - run
docker compose up -dand be patient1 - Fire up your SCUM game and connect using either no port or port 7779
Note: Don't want to use docker compose? Check decomposerize.
In your docker-compose.yml adjust PORT2 and QUERYPORT.
Warning
When PORT or QUERYPORT are altered, this change MUST reflect the port mapping as well.
Example for ports 10000 and 20000:
environment:
- PORT=10000
- QUERYPORT=20000
ports:
- "10000:10000/udp"
- "10000:10000/tcp"
- "10001:10001/udp"
- "10001:10001/tcp"
- "10002:10002/udp"
- "10002:10002/tcp"
- "20000:20000/udp"
- "20000:20000/tcp"The port for players to connect is now 10002.
All server data is exposed in the scumserver-data folder.
For further information check here.
This image does not come with an automated way to periodically restart.
Though this should be easy enough to setup using a cronjob, like
0 */6 * * * YourDockerUser cd /path/to/docker/compose/file && docker compose restart
Depending on your OS, the command might be docker-compose instead of docker compose.
Need different time or interval but lacking knowledge of cron? Check crontab.guru
Images tagged as latest are tested and known to work.
Any other tag represents active development and/or automated untested builds.
I am certain some port exposures are unnecessary. However, I could not find clear documentation on which ports and protocols are actually required. The SCUM server's port calculation behaviour doesn't help either. Exposing additional ports should not cause any harm.
This image started as reverse-engineered3 version of the j0s0n/scum-wine Docker image. It attempts to fix some of its issues relating to updates and restarts and perhaps adds some enhancements. All credit for the initial work goes to j0s0n.
Footnotes
-
Use
docker compose logsto check the process. Once you see something likescum-server | LogBattlEye: Display: Config entry: MasterPort 8037in the logs, your game server should be ready to accept player connections. ↩ -
SCUM has a weird way to assign the ports necessary for gameplay. It will always use two ports right after the assigned
PORT. For example if yourPORTis 7777, then it will always use 7778 and 7779 for various things as well. This also results in being 7779 the port for players to connect even though 7777 is configure. Ridiculous and dumb IMHO but it is what it is. ↩ -
As the author of the original image seems reluctant to provide the Dockerfile, I decided to take matters into my own hands.
For the reason above the original image should be considered closed-source/proprietary. ↩