services: mc: image: itzg/minecraft-server:2026.6.0-java17 container_name: mc-futurecraft restart: unless-stopped ports: - "25565:25565" environment: EULA: "TRUE" # CurseForge modpack TYPE: "AUTO_CURSEFORGE" CF_API_KEY: "${CF_API_KEY}" CF_SLUG: "futurecraft-5-0" CF_FILE_ID: "6103327" # Server MEMORY: "${MEMORY:-10G}" LEVEL: "world" DIFFICULTY: "normal" VIEW_DISTANCE: "10" SIMULATION_DISTANCE: "6" MAX_PLAYERS: "5" # RCON ENABLE_RCON: "true" RCON_PASSWORD: "${RCON_PASSWORD}" # Authentication / whitelist ONLINE_MODE: "FALSE" ENABLE_WHITELIST: "TRUE" volumes: - mc_data:/data backup: image: itzg/mc-backup:latest container_name: mc-futurecraft-backup restart: unless-stopped depends_on: mc: condition: service_healthy environment: SRC_DIR: "/data" DEST_DIR: "/backups" BACKUP_INTERVAL: "12h" INITIAL_DELAY: "0" # Delete backups older than 14 days PRUNE_BACKUPS_DAYS: "14" # Don't include generated/unnecessary directories EXCLUDES: "backups,cache,logs" # RCON connection to Minecraft RCON_HOST: "mc" RCON_PASSWORD: "${RCON_PASSWORD}" volumes: # Minecraft data only read-only for backup container - mc_data:/data:ro # Backups stored OUTSIDE Minecraft data volume - /backups/minecraft-futurecraft:/backups volumes: mc_data: external: true name: docker-compose_mc_data