Persistencia de datos naturalmente amigable
Los contenedores no son naturalmente seguros, agrega algunos parámetros para cerrar muchas brechas:
Lecciones de sangre
lanzaste container nuevo, reiniciaste y —— configuración desapareció, datos desaparecieron, todo que cambiaste volvió a defaults. No es bug, es comportamiento normal de Docker: contenedores son temporales, si borras no queda nada. Sin persistencia, Docker no te ayuda.
Soluciones
Usa Certbot para solicitar certificado SSL gratuito:
cuatro pasos para persistencia
crear estructura de directorio
Crea el directorio de datos en NAS. Una estructura clara te facilita los backups y migraciones después. Sugiero dividir en cuatro subdirectorios: data, config, logs, memory.
Mapea al contenedor
En docker-compose.yml o en la interfaz de gestión de Docker, mapea el directorio del host al path correspondiente dentro del contenedor. Después de mapear, los datos que escribe el contenedor se guardan en el disco del NAS.
Configura backup programado
Aunque los datos estén en el NAS, RAID no te protege contra el botón que apretás por error. Escribe un script simple de backup, usa cron para que corra periódicamente, una capa más de protección.
Verifica que la recuperación funcione
no solo backupees sin probar. Borra contenedor y reconstruye, verifica datos aún, config aún activa, servicio inicia bien. Si descubres backup roto cuando pasa el desastre es muy tarde.
Ejemplo de mapeo de volumen
esta es la estructura de directorio recomendada y cómo mapear, funciona para Synology, QNAP, Unraid y todos los NAS:
services:
Script de backup automático
escribe script, backup automático diario. Mantén últimos 7 días, borra viejos automáticamente:
#!/bin/bash
Tareas programadas
Agrega Watchtower a tu docker-compose.yml:
# Editar crontab
Plan de backup avanzado
Si tienes requisitos más altos de seguridad de datos, consulta el tutorial avanzado de respaldos, que cubre respaldos incrementales, cifrados, sincronización en la nube y más: