- Complete bare metal installer with SteamCMD, MetaMod, SourceMod, ULX - Docker installer with one-liner support - Server configuration files (server.cfg, autoexec.cfg, mount.cfg) - Update script for easy maintenance - Backup script for server data - Workshop collection documentation - SourceMod admin configuration template
63 lines
1.4 KiB
YAML
63 lines
1.4 KiB
YAML
version: '3.8'
|
|
|
|
services:
|
|
gmod-prophunt:
|
|
build:
|
|
context: ..
|
|
dockerfile: docker/Dockerfile
|
|
container_name: gmod-prophunt
|
|
restart: unless-stopped
|
|
|
|
environment:
|
|
- SRCDS_TOKEN=${SRCDS_TOKEN:-}
|
|
- SERVER_NAME=${SERVER_NAME:-PropHunt Server}
|
|
- RCON_PASSWORD=${RCON_PASSWORD:-changeme}
|
|
- MAX_PLAYERS=${MAX_PLAYERS:-24}
|
|
- MAP=${MAP:-gm_construct}
|
|
- PORT=${PORT:-27015}
|
|
- GAMEMODE=${GAMEMODE:-prop_hunt}
|
|
- WORKSHOP_COLLECTION=${WORKSHOP_COLLECTION:-}
|
|
- TICKRATE=${TICKRATE:-66}
|
|
- TZ=${TZ:-America/Los_Angeles}
|
|
|
|
ports:
|
|
- "${PORT:-27015}:27015/tcp"
|
|
- "${PORT:-27015}:27015/udp"
|
|
- "27005:27005/udp"
|
|
- "27020:27020/udp"
|
|
|
|
volumes:
|
|
# Persistent data
|
|
- gmod-data:/home/gmod/serverfiles/garrysmod/data
|
|
- gmod-addons:/home/gmod/serverfiles/garrysmod/addons
|
|
# Config can be bind-mounted for easy editing
|
|
- ./cfg:/home/gmod/serverfiles/garrysmod/cfg:ro
|
|
|
|
networks:
|
|
- gmod-network
|
|
|
|
# Resource limits (optional, adjust as needed)
|
|
deploy:
|
|
resources:
|
|
limits:
|
|
cpus: '4'
|
|
memory: 4G
|
|
reservations:
|
|
cpus: '1'
|
|
memory: 1G
|
|
|
|
# Logging configuration
|
|
logging:
|
|
driver: "json-file"
|
|
options:
|
|
max-size: "10m"
|
|
max-file: "3"
|
|
|
|
networks:
|
|
gmod-network:
|
|
driver: bridge
|
|
|
|
volumes:
|
|
gmod-data:
|
|
gmod-addons:
|