CreeperGuard
Servicio de backups automatizados para servidores Minecraft en Docker. Gestiona el flujo completo: avisa a los jugadores por chat, apaga el servidor de forma controlada, comprime los datos del mundo y lo reinicia, todo de forma desatendida.
Lenguaje
Java 25
Spring Boot
Despliegue
Docker
Compose ready
Interfaz
Web + API
Puerto 8080
Protocolo
RCON
Notificaciones in-game
¿Qué hace CreeperGuard?
Un servicio que vive junto a tu servidor Minecraft y se encarga de los backups sin que tengas que pensar en ello.
Backups programados
Múltiples expresiones cron configurables, con ajustes globales y sobreescrituras por horario.
Avisos por RCON
Cuenta atrás personalizable antes del backup con notificaciones en el chat de los jugadores.
Rotación de backups
Elimina automáticamente los backups más antiguos según la política de retención definida.
REST API
Endpoints para ejecutar comandos y lanzar backups manuales, todo con respuestas JSON.
Consola web RCON
Interfaz web en el puerto 8080 para enviar comandos al servidor en tiempo real.
Sin rebuild
Los cambios de configuración se aplican con un simple restart del contenedor, sin recompilar.
Cómo funciona
Llega la hora del backup
El scheduler interno evalúa las expresiones cron configuradas. Cuando coincide, arranca el proceso completo de forma automática.
Aviso a los jugadores
CreeperGuard conecta al servidor vía RCON y envía mensajes de cuenta atrás al chat. Los jugadores tienen tiempo de guardar y prepararse.
Apagado controlado
Una vez finalizada la cuenta atrás, envía el comando de parada al servidor Docker para que el mundo se guarde correctamente antes de comprimir.
Compresión y almacenamiento
Los datos del mundo se comprimen y se guardan en el directorio de destino configurado. Los backups más antiguos se eliminan según la política de retención.
Reinicio del servidor
CreeperGuard reinicia el contenedor del servidor Minecraft automáticamente. Los jugadores pueden volver a conectarse en segundos.
Configuración
Copia creeperguard.properties.example como creeperguard.properties junto a tu docker-compose.yml y edítalo.
creeperguard.properties
# CreeperGuard config — copia este fichero a tu directorio de Minecraft
# como "creeperguard.properties" y edítalo allí.
#
# Aplica los cambios con: docker compose restart creeperguard
backup.source-path=/minecraft
backup.destination-path=/backups
backup.docker-container=minecraft
backup.rcon-host=minecraft
backup.rcon-port=25575
backup.rcon-password=your_rcon_password
backup.rcon-warning-seconds=10
# --- Horarios CRON ---
# Formato: segundo minuto hora día-mes mes día-semana
backup.schedules[0].cron=0 0 8 * * *
backup.schedules[1].cron=0 0 20 * * * docker-compose.yml (fragmento)
services:
creeperguard:
image: creeperguard:latest
container_name: creeperguard
volumes:
- ./creeperguard.properties:/app/creeperguard.properties:ro
- /path/to/minecraft:/minecraft:ro
- /path/to/backups:/backups
ports:
- "8080:8080"
restart: unless-stopped Requisito previo: activa RCON en server.properties de tu servidor Minecraft con enable-rcon=true y establece una contraseña.
API REST
Todos los endpoints responden con JSON. Disponibles en http://localhost:8080.
/api/command Envía un comando arbitrario al servidor Minecraft vía RCON.
/api/backup Lanza un backup manual de inmediato, responde con resultado o error en JSON.
La consola RCON web está disponible directamente en http://localhost:8080 para enviar comandos al servidor desde el navegador.
¿Usas Minecraft en Docker?
CreeperGuard está pensado para servidores privados que necesitan backups fiables sin intervención manual. El código está en abierto.
Ver en GitLab