Sign inSign up

charlocharlie/csgo

By charlocharlie

•Updated almost 6 years ago

Image
0

492

charlocharlie/csgo repository overview

Docker Cloud Build Status Docker Stars Docker Pulls Discord

⁠What is Counter-Strike: Global Offensive?

Counter-Strike: Global Offensive (CS: GO) expands upon the team-based action gameplay that it pioneered when it was launched 19 years ago. CS: GO features new maps, characters, weapons, and game modes, and delivers updated versions of the classic CS content (de_dust2, etc.). This Docker image contains the dedicated server of the game.

logo

⁠How to use this image

⁠Hosting a simple game server

Running on the host interface (recommended):

$ docker run -d --net=host --name=csgo-dedicated -e SRCDS_TOKEN={YOURTOKEN} cm2network/csgo

Running using a bind mount for data persistence on container recreation:

$ mkdir -p $(pwd)/csgo-data
$ chmod 777 $(pwd)/csgo-data # Makes sure the directory is writeable by the unprivileged container user
$ docker run -d --net=host -v $(pwd)/csgo-data:/home/steam/csgo-dedicated/ --name=csgo-dedicated -e SRCDS_TOKEN={YOURTOKEN} cm2network/csgo

Running multiple instances (increment SRCDS_PORT and SRCDS_TV_PORT):

$ docker run -d --net=host --name=csgo-dedicated2 -e SRCDS_PORT=27016 -e SRCDS_TV_PORT=27021 -e SRCDS_TOKEN={YOURTOKEN} cm2network/csgo

SRCDS_TOKEN is required to be listed & reachable; https://steamcommunity.com/dev/managegameservers⁠

SRCDS_WORKSHOP_AUTHKEY is required to use the workshop; https://steamcommunity.com/dev/apikey⁠

It's also recommended to use "--cpuset-cpus=" to limit the game server to a specific core & thread.
The container will automatically update the game on startup, so if there is a game update just restart the container.

⁠Configuration

⁠Environment Variables

Feel free to overwrite these environment variables, using -e (--env):

SRCDS_RCONPW="changeme" (value can be overwritten by csgo/cfg/server.cfg) 
SRCDS_PW="changeme" (value can be overwritten by csgo/cfg/server.cfg) 
SRCDS_PORT=27015
SRCDS_TV_PORT=27020
SRCDS_NET_PUBLIC_ADDRESS="0" (public facing ip, useful for local network setups)
SRCDS_IP="0" (local ip to bind)
SRCDS_FPSMAX=300
SRCDS_TICKRATE=128
SRCDS_MAXPLAYERS=14
SRCDS_STARTMAP="de_dust2"
SRCDS_REGION=3
SRCDS_MAPGROUP="mg_active"
SRCDS_GAMETYPE=0
SRCDS_GAMEMODE=1
SRCDS_HOSTNAME="New CSGO Server" (first launch only)
SRCDS_WORKSHOP_START_MAP=0
SRCDS_HOST_WORKSHOP_COLLECTION=0
SRCDS_WORKSHOP_AUTHKEY="" (required to use host_workshop_map)

⁠Config

The image contains a copy of the official ESL config files from here⁠. You can edit the config using this command:

$ docker exec -it csgo-dedicated nano /home/steam/csgo-dedicated/csgo/cfg/server.cfg

If you want to learn more about configuring a CS:GO server check this documentation⁠.

⁠Image Variants:

The csgo images come in three flavors, each designed for a specific use case.

⁠csgo:latest

This is the defacto image. If you are unsure about what your needs are, you probably want to use this one. It is a bare-minimum CSGO dedicated server containing no 3rd party plugins.

⁠csgo:metamod

This is a specialized image. It contains the plugin environment Metamod:Source⁠ which can be found in the addons directory. You can find additional plugins here⁠.

⁠csgo:sourcemod

This is another specialized image. It contains both Metamod:Source⁠ and the popular server plugin SourceMod⁠ which can be found in the addons directory. SourceMod⁠ supports a wide variety of additional plugins that can be found here⁠.

Tag summary

Content type

Image

Digest

Size

172.2 MB

Last updated

almost 6 years ago

docker pull charlocharlie/csgo