118 lines
2.6 KiB
YAML
118 lines
2.6 KiB
YAML
services:
|
|
router:
|
|
image: itzg/mc-router
|
|
container_name: mc-router
|
|
environment:
|
|
TZ: Europe/Amsterdam
|
|
API_BINDING: ":25564"
|
|
ports:
|
|
- "25565:25565"
|
|
# bind the API port to only loopback to avoid external exposure
|
|
- "127.0.0.1:25564:25564"
|
|
command: --mapping=mc.marijndoeve.nl=omb:25565,omb.marijndoeve.nl=omb:25565,10.0.0.21=omb:25565
|
|
restart: unless-stopped
|
|
networks:
|
|
- internal
|
|
|
|
db:
|
|
image: postgres:14
|
|
container_name: mc-db
|
|
environment:
|
|
TZ: Europe/Amsterdam
|
|
POSTGRES_PASSWORD: dynmap123
|
|
volumes:
|
|
- db-data:/var/lib/postgresql/data
|
|
restart: unless-stopped
|
|
networks:
|
|
- internal
|
|
|
|
web:
|
|
image: php:7.4-apache
|
|
container_name: mc-web
|
|
environment:
|
|
TZ: Europe/Amsterdam
|
|
volumes:
|
|
- /opt/omb3/data/dynmap/web:/var/www/html:ro
|
|
restart: unless-stopped
|
|
depends_on:
|
|
- db
|
|
labels:
|
|
- traefik.enable=true
|
|
- traefik.http.routers.ombweb.rule=Host(`mc.marijndoeve.nl`, `omb.marijndoeve.nl`)
|
|
- traefik.http.routers.ombweb.entrypoints=websecure
|
|
- traefik.http.routers.ombweb.tls.certresolver=marijndoeve
|
|
networks:
|
|
- internal
|
|
- web
|
|
|
|
backup:
|
|
image: itzg/mc-backup
|
|
container_name: mc-backup
|
|
environment:
|
|
TZ: Europe/Amsterdam
|
|
PRUNE_BACKUPS_DAY: 7
|
|
BACKUP_INTERVAL: "30m"
|
|
INITAL_DELAY: "120"
|
|
PAUSE_IF_NO_PLAYERS: "true"
|
|
RCON_HOST: omb
|
|
RCON_PASSWORD: minecraft
|
|
LINK_LATEST: "true"
|
|
volumes:
|
|
- /opt/minecraft/data:/data:ro
|
|
- backup_volume:/backups
|
|
depends_on:
|
|
- omb
|
|
networks:
|
|
- internal
|
|
restart: unless-stopped
|
|
|
|
omb:
|
|
image: itzg/minecraft-server
|
|
container_name: mc-omb3
|
|
ports:
|
|
- "24454:24454/udp" # Voice mod
|
|
environment:
|
|
# Server
|
|
EULA: "TRUE"
|
|
TYPE: FABRIC
|
|
VERSION: 1.19
|
|
INIT_MEMORY: 1G
|
|
MAX_MEMORY: 12G
|
|
TZ: Europe/Amsterdam
|
|
GID: 998
|
|
|
|
# Auto Pause
|
|
ENABLE_AUTOPAUSE: "TRUE"
|
|
|
|
# server.properties
|
|
OVERRIDE_SERVER_PROPERTIES: "TRUE"
|
|
DIFFICULTY: hard
|
|
ENABLE_WHITELIST: "TRUE"
|
|
ENFORCE_WHITELIST: "TRUE"
|
|
SEED: ${SEED}
|
|
SPAWN_PROTECTION: 0
|
|
MAX_TICK_TIME: -1
|
|
MOTD: One Minecraft Boys - Season 3
|
|
restart: unless-stopped
|
|
volumes:
|
|
- /opt/minecraft/data:/data
|
|
depends_on:
|
|
- router
|
|
networks:
|
|
- internal
|
|
|
|
volumes:
|
|
backup_volume:
|
|
driver_opts:
|
|
type: "nfs"
|
|
o: "nfsvers=3,addr=10.0.0.20,soft"
|
|
device: ":/volume1/Minecraft-backups/omb3"
|
|
db-data:
|
|
|
|
|
|
networks:
|
|
web:
|
|
external: true
|
|
internal:
|
|
external: false
|