selfhosted-traefik/ts3/docker-compose.yml
2024-02-24 14:03:59 +01:00

46 lines
1.2 KiB
YAML

version: '3.5'
networks:
default:
external:
name: traefik_default
services:
teamspeak-app:
networks:
- default
image: teamspeak:latest
env_file: live.env
container_name: ts3-service
restart: unless-stopped
volumes:
- ./data:/var/ts3server
depends_on:
- teamspeak-db
labels:
# Watchtower
- "com.centurylinklabs.watchtower.enable=true"
# Traefik
- "traefik.enable=true"
# tcp
- "traefik.tcp.routers.teamspeak-tcp.entrypoints=ts-tcp"
- "traefik.tcp.routers.teamspeak-tcp.service=teamspeak-tcp"
- "traefik.tcp.routers.teamspeak-tcp.rule=HostSNI(`ts3.${DOMAIN}`)"
- "traefik.tcp.routers.teamspeak-tcp.tls=true"
- "traefik.tcp.routers.teamspeak-tcp.tls.certresolver=myresolver"
- "traefik.tcp.services.teamspeak-tcp.loadbalancer.server.port=30033"
# udp
- "traefik.udp.routers.teamspeak-udp.entrypoints=ts-udp"
- "traefik.udp.routers.teamspeak-udp.service=teamspeak-udp"
- "traefik.udp.services.teamspeak-udp.loadbalancer.server.port=9987"
teamspeak-db:
networks:
- default
image: mariadb:10.11
env_file: live.env
container_name: ts3-db
restart: unless-stopped
volumes:
- ./db:/var/lib/mysql