Files
tmserver-docker/docker-compose.yml
2026-03-20 19:21:09 +01:00

57 lines
1.5 KiB
YAML

services:
tmserver:
build:
context: .
container_name: tmserver
restart: unless-stopped
depends_on:
mariadb:
condition: service_healthy
ports:
- "${SERVER_PORT:-2350}:${SERVER_PORT:-2350}/tcp"
- "${SERVER_PORT:-2350}:${SERVER_PORT:-2350}/udp"
- "${SERVER_P2P_PORT:-3450}:${SERVER_P2P_PORT:-3450}/tcp"
- "${SERVER_XMLRPC_PORT:-5000}:${SERVER_XMLRPC_PORT:-5000}/tcp"
- "80:80/tcp"
env_file:
- .env
volumes:
- ./data/gamedata:/opt/tmserver/GameData
- ./data/controlpanel:/var/www/html
networks:
tmserver_net:
ipv4_address: 172.20.60.10
mariadb:
image: mariadb:11.4
container_name: tmserver-mariadb
restart: unless-stopped
env_file:
- .env
environment:
MYSQL_ROOT_PASSWORD: ${MARIADB_ROOT_PASSWORD}
MYSQL_DATABASE: ${REMOTECP_DB_NAME:-remotecp}
MYSQL_USER: ${REMOTECP_DB_USER:-remotecp}
MYSQL_PASSWORD: ${REMOTECP_DB_PASSWORD}
volumes:
- ./data/mariadb:/var/lib/mysql
healthcheck:
test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"]
interval: 10s
timeout: 5s
retries: 5
start_period: 30s
networks:
tmserver_net:
ipv4_address: 172.20.60.11
networks:
tmserver_net:
name: tmserver.dockernetwork.local
driver: bridge
ipam:
config:
- subnet: 172.20.60.0/25
gateway: 172.20.60.1
ip_range: 172.20.60.64/26