Files
chocopiesmp/docker-compose.yml
T

111 lines
3.5 KiB
YAML

services:
mc:
image: itzg/minecraft-server
pull_policy: daily
tty: true
stdin_open: true
depends_on:
restore-backup:
condition: service_completed_successfully
user: "${UID}:${GID}"
ports:
- "${SERVER_PORT}:25565"
- "${VOICE_CHAT_PORT}:24454/udp"
- "${RCON_PORT}:25585"
- "${BLUEMAP_PORT}:8080"
- "${GEYSER_PORT}:19132/udp"
environment:
VERSION: "1.21.4"
ANNOUNCE_PLAYER_ACHIEVEMENTS: false
EULA: "TRUE"
TYPE: "PAPER"
PLUGINS: |
https://hangarcdn.papermc.io/plugins/henkelmax/SimpleVoiceChat/versions/bukkit-2.6.20/PAPER/voicechat-bukkit-2.6.20.jar
https://download.geysermc.org/v2/projects/geyser/versions/latest/builds/latest/downloads/spigot
https://download.geysermc.org/v2/projects/floodgate/versions/latest/builds/latest/downloads/spigot
https://hangarcdn.papermc.io/plugins/froobynooby/SeeMore/versions/1.0.2/PAPER/SeeMore-1.0.2.jar
https://hangarcdn.papermc.io/plugins/ViaVersion/ViaVersion/versions/5.12.0/PAPER/ViaVersion-5.12.0.jar
https://hangarcdn.papermc.io/plugins/SRTeam/SkinsRestorer/versions/15.12.4/PAPER/SkinsRestorer.jar
## https://hangarcdn.papermc.io/plugins/jmp/squaremap/versions/1.3.14/PAPER/squaremap-paper-mc26.2-1.3.14.jar
## https://hangarcdn.papermc.io/plugins/jtchips/CoordinateOffset/versions/6.1.7/PAPER/CoordinateOffset-Paper-6.1.7.jar
https://github.com/retrooper/packetevents/releases/download/v2.13.0/packetevents-spigot-2.13.0.jar
https://github.com/VoX/lod-server-support/releases/download/v0.16.0/lod-server-support-paper-0.16.0+26.2.jar
COPY_CONFIG_DEST: "/data"
ONLINE_MODE: false
RCON_PASSWORD: ${RCON_PASSWORD}
RCON_PORT: ${RCON_PORT}
MAX_MEMORY: "4G"
SPAWN_PROTECTION: 0
ENABLE_WHITELIST: true
ENABLE_AUTOPAUSE: false
volumes:
- ./mc-data:/data
- ./mcserver:/config
- ./plugins:/plugins
restart: unless-stopped
networks:
- mc-network
monitor:
image: itzg/mc-monitor
command: export-for-prometheus
ports:
- "9090:8080"
environment:
EXPORT_SERVERS: mc
DEBUG: "true"
depends_on:
- mc
networks:
- mc-network
restore-backup:
# Same image as mc, but any base image with bash and tar will work
image: itzg/mc-backup
restart: "no"
entrypoint: restore-rsync-backup
volumes:
# Must be same mount as mc service, needs to be writable
- ./mc-data:/data
# Must be same mount as backups service, but can be read-only
- ./mc-backups:/backups:ro
networks:
- mc-network
backups:
image: itzg/mc-backup
depends_on:
mc:
condition: service_healthy
restart: unless-stopped
environment:
BACKUP_INTERVAL: "24h"
RCON_HOST: mc
# since this service waits for mc to be healthy, no initial delay is needed
INITIAL_DELAY: 0
PRUNE_BACKUPS_COUNT: 3
RCON_PASSWORD: ${RCON_PASSWORD}
RCON_PORT: 25585
BACKUP_METHOD: "rsync"
volumes:
- ./mc-data:/data:ro
- ./mc-backups:/backups
networks:
- mc-network
# broadcaster:
## image: ghcr.io/mcxboxbroadcast/standalone:latest
## user: "${UID}:${GID}"
## depends_on:
## #proxy:
## # condition: service_healthy
## mc:
## condition: service_healthy
## volumes:
## - ./mcxboxbroadcast/config:/opt/data/config
## networks:
## - mc-network
## restart: unless-stopped
networks:
mc-network:
driver: bridge