diff --git a/README.md b/README.md index e090ff7..f1c8435 100644 --- a/README.md +++ b/README.md @@ -56,6 +56,7 @@ docker compose up - [Domain Name Service (DNS)](#domain-name-service-dns) - [E-commerce](#e-commerce) - [File Transfer & Synchronization](#file-transfer--synchronization) +- [Games and Control Panels](#games-and-control-panels) - [Genealogy](#genealogy) - [Identity Management - Single Sign-On (SSO) & LDAP](#identity-management---single-sign-on-sso--ldap) - [Miscellaneous](#miscellaneous) @@ -409,6 +410,15 @@ A request bin service allows one to collect and inspect HTTP requests. It may be - [Request-Baskets](https://github.com/darklynx/request-baskets) - HTTP requests collector to test webhooks, notifications, REST clients and more. - [Mockbin](https://github.com/Kong/mockbin) - Mock, Test & Track HTTP Requests and Response for Microservices. +### Games and Control Servers + +**[`^ back to top ^`](#-project-list)** + +Multiplayer game servers, browser games and utilities for managing game servers. + +- [cs2-dedicated-server](examples/cs2-dedicated-server) - CS2 Dedicated Server Docker Image with an RCON web-based control panel. + + ### Miscellaneous **[`^ back to top ^`](#-project-list)** diff --git a/examples/cs2-dedicated-server/README.md b/examples/cs2-dedicated-server/README.md new file mode 100644 index 0000000..b4b196c --- /dev/null +++ b/examples/cs2-dedicated-server/README.md @@ -0,0 +1,12 @@ +# References + +- https://github.com/joedwards32/CS2 +- https://github.com/shobhit-pathak/cs2-rcon-panel + +# Notes + +Minimum system requirements are: + +- 2 CPUs +- 2 GiB RAM +- 40 GB of disk space for the container or mounted as a persistent volume on /home/steam/cs2-dedicated/ \ No newline at end of file diff --git a/examples/cs2-dedicated-server/docker-compose.yml b/examples/cs2-dedicated-server/docker-compose.yml new file mode 100644 index 0000000..f2e9773 --- /dev/null +++ b/examples/cs2-dedicated-server/docker-compose.yml @@ -0,0 +1,53 @@ +version: '3.7' + +services: + + cs2-server: + image: joedwards32/cs2 + container_name: cs2-dedicated-server + restart: unless-stopped + environment: + # Server configuration + - SRCDS_TOKEN= # Game Server Token from https://steamcommunity.com/dev/managegameservers + - CS2_SERVERNAME=MY-CS2-SERVER # (Set the visible name for your private server) + - CS2_CHEATS=0 # (0 - disable cheats, 1 - enable cheats) + - CS2_PORT=27015 # (CS2 server listen port tcp_udp) + - CS2_SERVER_HIBERNATE=0 # (Put server in a low CPU state when there are no players. 0 - hibernation disabled, 1 - hibernation enabled) + - CS2_LAN=0 # (0 - LAN mode disabled, 1 - LAN Mode enabled) + - CS2_RCONPW=cruelly-sequel # (RCON password) + - CS2_PW=sake-earthly-lair # (CS2 server password) + - CS2_MAXPLAYERS=10 # (Max players) + # Game modes + - CS2_GAMEALIAS=competitive # (Game type, e.g. casual, competitive, deathmatch. See https://developer.valvesoftware.com/wiki/Counter-Strike_2/Dedicated_Servers) + - CS2_GAMETYPE=0 # (Used if CS2_GAMEALIAS not defined. See https://developer.valvesoftware.com/wiki/Counter-Strike_2/Dedicated_Servers) + - CS2_GAMEMODE=1 # (Used if CS2_GAMEALIAS not defined. See https://developer.valvesoftware.com/wiki/Counter-Strike_2/Dedicated_Servers) + - CS2_MAPGROUP=mg_active # (Map pool) + - CS2_STARTMAP=de_dust2 # (Start map) + # Bots + - CS2_BOT_DIFFICULTY=0 # (0 - easy, 1 - normal, 2 - hard, 3 - expert) + - CS2_BOT_QUOTA=0 # (Number of bots) + - CS2_BOT_QUOTA_MODE=competitive # (fill, competitive) + # TV + - TV_AUTORECORD=0 # Automatically records all games as CSTV demos: 0=off, 1=on. + - TV_ENABLE=0 # Activates CSTV on server: 0=off, 1=on. + - TV_PORT=27020 # Host SourceTV port + - TV_PW=changeme # CSTV password for clients + - TV_RELAY_PW=changeme # CSTV password for relay proxies + - TV_MAXRATE=0 # World snapshots to broadcast per second. Affects camera tickrate. + - TV_DELAY=0 # Max CSTV spectator bandwidth rate allowed, 0 == unlimited + volumes: + - cs2:/home/steam/cs2-dedicated/ + ports: + - 27015:27015/tcp # TCP + - 27015:27015/udp # UDP + #- 27020:27020/udp # UDP + + cs2-rconpanel: + image: soren90/rcon-panel + container_name: cs2-rcon-panel + ports: + - 3000:3000 + restart: unless-stopped + +volumes: + cs2: \ No newline at end of file diff --git a/examples/papermerge/docker-compose.yml b/examples/papermerge/docker-compose.yml index 4654330..39b36ec 100644 --- a/examples/papermerge/docker-compose.yml +++ b/examples/papermerge/docker-compose.yml @@ -9,7 +9,7 @@ services: expose: - 8000 ports: - - 8000:8000 + - 8888:8000 depends_on: - db - redis diff --git a/examples/wikijs/docker-compose.yml b/examples/wikijs/docker-compose.yml index 2770f5c..031ff90 100644 --- a/examples/wikijs/docker-compose.yml +++ b/examples/wikijs/docker-compose.yml @@ -10,13 +10,13 @@ services: container_name: wikijs restart: unless-stopped ports: - - 3000:3000 # WEB UI + - 8888:3000 # WEB UI volumes: - ${DOCKER_VOLUME_STORAGE:-/mnt/docker-volumes}/wikijs/config:/config - ${DOCKER_VOLUME_STORAGE:-/mnt/docker-volumes}/wikijs/data:/data links: - db - + db: environment: - POSTGRES_PASSWORD=MySecureDatabasePassword