A docker image for running a dedicated server for the game Barotrauma.
docker build -t barotrauma https://github.com/FragSoc/barotrauma-docker.git && \
docker run -d -p 27015:27015/udp -p 27016:27016/udp barotrauma
- Port
27015/udp
must be opened for client connections - Port
27016/udp
can optionally be opened for steam communication
Both of these can be changed, see below.
The container uses three volumes:
- Server configuration files at
/config
- Mods files at
/mods
- Saves at
/saves
Note: if you use bind mounts, the host paths you mount into the container must be readable+writable by the UID and/or GID you passed to the build (default 999
)
Argument Key | Default Value | Description |
---|---|---|
UID |
999 |
The *nix UID to assign to the user in the container |
GID |
999 |
The *nix GID to assign to the container user's primary group |
GAME_PORT |
27015 |
The port to open and assign for the game, must still be set in configuration |
STEAM_PORT |
27016 |
The port to open and assign for steam queries, must still be set in configuration |
APPID |
1026340 |
The steam appid to install for the server, unlikely to need changing |
STEAM_BETA |
The string to pass to steamcmd to install a beta version of the game, eg. -beta mybetaname -betapassword letmein |
|
STEAM_EPOCH |
Used to rebuild the image when a new game version is released, retaining the cached apt packages etc. Value itself is ignored. When you want to rebuild the image for the latest version of the game, use any unique value (the current timestamp is a good idea). |
A minimal shell script is included to install mods with. The script can be invoked (inside the container) with:
install-mod <steam username> <space-delimited list of workshop IDs...>
- You will be prompted by steamcmd to log in, this is because the steam workshop requires someone who owns the game to be logged in to download anything
- The script will give you a list of lines to enter into your
/config/config_player.xml
file (make sure you get them inside the root tag) - Some mods may require special attention to paths inside their
filelist.xml
files
The few files in this repository are licensed under the GPL.
However, Barotrauma itself is licensed by Undertow Games and Fakefish, no credit is taken for the software running in this container. Read their EULA for more information.