Skip to content
BotServBotServ
DockerBackupEstrategia3-2-1Offsite

Estrategias de Backup en Docker

Estrategias de backup para Docker. 3-2-1, volúmenes, configuración, imágenes y offsite.

S

schutzgeist

3 min read
Estrategias de Backup en Docker

Estrategias de respaldo en Docker

Qué cubre este artículo sobre estrategias de respaldo en Docker

  • Características de una buena estrategia de respaldo.
  • Regla 3-2-1 para Docker.
  • Qué debe respaldarse.
  • Rotación, retención y pruebas.
  • Herramientas y ejemplos.

Introducción: estrategias de respaldo en Docker

Los contenedores son sin estado, pero los datos que contienen no lo son. Si ejecutas contenedores Docker, debes garantizar que los datos persistentes, configuraciones e imágenes puedan recuperarse ante una falla. Una buena estrategia de respaldo debe ser regular, redundante y probada. Sin un plan, es fácil perder datos importantes.

Este artículo te mostrará cómo construir una estrategia de respaldo robusta para entornos Docker.

Términos clave

  • Regla 3-2-1: Tres copias, dos medios, una externa.
  • Retention: Período de retención.
  • RTO: Recovery Time Objective.
  • RPO: Recovery Point Objective.
  • Snapshot: Copia puntual en el tiempo.
  • Offsite: Ubicación de almacenamiento externa.
  • Catalog: Lista de todos los respaldos.
  • DR-Plan: Plan de recuperación ante desastres.

¿Qué respaldar?

  • Volumes: Datos persistentes de las aplicaciones.
  • Bind Mounts: Directorios del host.
  • Archivos Compose: Infraestructura como código.
  • Variables de entorno y archivos .env: Configuración.
  • Images: Imágenes propias y sus etiquetas.
  • Secretos: Certificados, claves, contraseñas.
  • Database Dumps: Respaldos consistentes de bases de datos.

Regla 3-2-1

  • Al menos tres copias de los datos.
  • En al menos dos medios de almacenamiento diferentes.
  • Una copia en una ubicación externa.

Ejemplo:

  1. Copia local en NAS.
  2. Copia externa en almacenamiento en la nube.
  3. Versión archivada adicional en otro medio.

Cronograma de respaldo

FrecuenciaContenido
Cada horaRegistros de transacciones de base de datos
DiariamenteVolumes, database dumps
SemanalmenteRespaldo completo de imágenes
MensualmenteRespaldo de archivo

Automatización

#!/bin/bash
DATE=$(date +%Y%m%d_%H%M%S)
for vol in $(docker volume ls -q); do
  docker run --rm -v ${vol}:/data -v /backup:/backup alpine \
    tar -czf /backup/${vol}_${DATE}.tar.gz -C /data .
done

Database dumps

docker exec datenbank pg_dump -U postgres meine_db > /backup/db.sql

O:

docker exec datenbank mysqldump -u root -pgeheim db > /backup/db.sql

Respaldar configuración

cp -r /opt/docker/* /backup/configs/

Exportar imágenes

docker save -o /backup/images/mein-image.tar mein-image:latest

Offsite

  • S3, Backblaze B2.
  • rsync.net.
  • Disco duro externo.
  • Servidor FTP/SFTP.

Retención

  • ¿Cuánto tiempo deben conservarse los respaldos?
  • Respaldos diarios durante 14 días.
  • Respaldos semanales durante 8 semanas.
  • Respaldos mensuales durante 12 meses.

Pruebas

  • Realizar un restore cada trimestre.
  • Iniciar contenedores de prueba.
  • Verificar la aplicación.
  • Validar la integridad de los datos.

Herramientas

  • Restic: Incremental, cifrado, deduplicado.
  • Borg: Compresión, deduplicación.
  • Duplicati: Interfaz web, almacenamiento en la nube.
  • rsnapshot: Basado en snapshots.

Consejos

  • Automatizar respaldos.
  • Documentar períodos de retención.
  • Probar regularmente.
  • Nunca olvidar offsite.
  • Usar cifrado.
  • Guardar contraseñas separadas del respaldo.
  • Mantener un catálogo.

Errores comunes

  • Respaldar solo imágenes de contenedores: Faltan datos.
  • Sin database dumps: Respaldos inconsistentes.
  • Sin pruebas: La recuperación no funciona en una emergencia.
  • Sin offsite: Un incendio o robo destruye todo.
  • Retención incorrecta: El almacenamiento se llena o los respaldos son demasiado antiguos.
  • Secrets en el respaldo: Peligroso si no está cifrado.

Enlaces y referencias adicionales

FAQ: Estrategias de respaldo en Docker

¿Qué debo respaldar en Docker? Volumes, Bind Mounts, archivos Compose, archivos .env, database dumps e imágenes propias.

¿Con qué frecuencia debo hacer respaldos? Bases de datos diariamente, volumes según la frecuencia de cambios.

¿Qué son RTO/RPO? RTO es el tiempo máximo de recuperación, RPO es la pérdida de datos máxima tolerable.

¿Debo respaldar imágenes? Sí, si no pueden recrearse fácilmente.

¿Es suficiente un respaldo? No, mínimo 3-2-1, es decir, tres copias en dos medios, una externa.

Fuentes y referencias adicionales

Resumen: Estrategias de respaldo en Docker

Una estrategia de respaldo en Docker bien planificada asegura volumes, configuración, database dumps e imágenes de forma regular, redundante y probada. La regla 3-2-1 ofrece un marco comprobado. La automatización, offsite, cifrado y pruebas regulares de recuperación son imprescindibles. Quien no solo crea respaldos sino que también los aplica en caso de emergencia está bien protegido contra la pérdida de datos.

Volver al blog
Share:

Entradas relacionadas