- Get a CollectionID from the Steam Workshop
- Get a Steam API Key
- Set up environment variables. The available variables are:
PORT = "27015"
MAXPLAYERS = "16"
G_HOSTNAME = "Garry's Mod"
GAMEMODE = "terrortown"
MAP = "gm_construct"
PASSWORD = ""
HOST_WORKSHOP_COLLECTION = ""
AUTHKEY = ""
ARGS = "" // can be used for any additional parameter, e.g. "+rcon_password xxxx" (see example)
Build:
docker build -t tttserver .
Example:
docker run -t -d -p 27005:27005/udp \
-p 27015:27015/udp \
-p 27006:27006/tcp \
-p 27015:27015/tcp \
-v ./server.cfg:/home/steam/gmodds/garrysmod/cfg/server.cfg tttserver \
--env PORT='27015' \
--env MAXPLAYERS='16' \
--env G_HOSTNAME='Garry\'s Mod' \
--env PASSWORD='xxx' \
--env GAMEMODE='terrortown' \
--env MAP='gm_construct' \
--env HOST_WORKSHOP_COLLECTION='XXXX' \
--env AUTHKEY='XXXX' \
--env ARGS='+rcon_password xxxx'
Alternatively use:
docker-compose up
The docker-compose.yaml contains the example from above. Modify it in order to start the container with another configuration.