Skip to content
BotServBotServ
DockerVolumesBackupRestoreRestic

Respaldar Docker Volumes de forma segura

Backup de Docker Volumes con tar, Duplicati y Restic. Estrategias y procedimientos de restauración.

S

schutzgeist

4 min read
Respaldar Docker Volumes de forma segura

Hacer copias de seguridad de volúmenes Docker de forma segura

Qué cubre este artículo sobre copias de seguridad de volúmenes Docker

  • Cómo hacer copias de seguridad de volúmenes Docker.
  • Qué herramientas son adecuadas.
  • Cómo funciona la restauración.
  • Copias de seguridad incrementales y automatizadas.
  • Opciones offsite y cifrado.

Introducción: hacer copias de seguridad de volúmenes Docker de forma segura

Los volúmenes Docker almacenan a menudo los datos más críticos: bases de datos, configuraciones, modelos, cargas de usuarios o registros. Quien ejecuta contenedores sin una estrategia de copias de seguridad corre el riesgo de perder datos por fallos de contenedor, discos defectuosos o eliminaciones accidentales. Una buena copia de seguridad debe ser regular, automática, comprobada y estar en un lugar seguro.

Este artículo muestra cómo hacer copias de seguridad de volúmenes Docker de forma confiable y cómo restaurarlos.

Términos importantes

  • Volume: Almacenamiento persistente en Docker.
  • Bind Mount: Directorio del host en el contenedor.
  • Backup: Copia de datos para restaurar.
  • Restore: Recuperación de una copia de seguridad.
  • Snapshot: Estado en un punto específico en el tiempo.
  • Incremental: Guardar solo los datos modificados.
  • Offsite: Copia de seguridad en una ubicación externa.
  • Regla 3-2-1: Tres copias, dos medios, uno externo.

Copia de seguridad manual con tar

docker run --rm -v quell-volume:/data -v $(pwd):/backup alpine \
  tar -czf /backup/volume-backup.tar.gz -C /data .

Restauración manual

docker run --rm -v quell-volume:/data -v $(pwd):/backup alpine \
  tar -xzf /backup/volume-backup.tar.gz -C /data

El volumen debe existir previamente.

Identificar un volumen individual

docker volume ls
docker inspect quell-volume

Detener contenedores en ejecución antes de la copia de seguridad

Para copias de seguridad consistentes de bases de datos, detén el contenedor o usa las herramientas nativas de la base de datos:

docker stop datenbank
docker run --rm -v datenbank-volume:/data -v $(pwd):/backup alpine \
  tar -czf /backup/db.tar.gz -C /data .
docker start datenbank

Script de copia de seguridad

#!/bin/bash
BACKUP_DIR=/pfad/zu/backups
DATE=$(date +%Y%m%d_%H%M%S)
VOLUME=$1

docker run --rm -v "${VOLUME}:/data" -v "${BACKUP_DIR}:/backup" alpine \
  tar -czf "/backup/${VOLUME}_${DATE}.tar.gz" -C /data .

Automatización con Cron

0 2 * * * /home/benutzer/backup-volume.sh datenbank-volume

Restic para copias de seguridad incrementales

Restic es excelente para copias de seguridad incrementales, deduplicadas y cifradas.

docker run --rm \
  -v datenbank-volume:/data:ro \
  -v /pfad/zu/repo:/repo \
  restic/restic init -r /repo

docker run --rm \
  -v datenbank-volume:/data:ro \
  -v /pfad/zu/repo:/repo \
  -e RESTIC_PASSWORD=meinpasswort \
  restic/restic -r /repo backup /data

Duplicati

Duplicati ofrece una interfaz web, copias de seguridad incrementales, cifrado y almacenamiento en la nube:

services:
  duplicati:
    image: duplicati/duplicati
    volumes:
      - /pfad/zu/backups:/backups
      - /var/lib/docker/volumes:/source:ro
    ports:
      - "8200:8200"

Copia de seguridad offsite

  • Almacenamiento de objetos compatible con S3.
  • Servidor SFTP.
  • rsync.net.
  • B2 Backblaze.
  • Nextcloud.

Restic puede dirigirse directamente a S3:

restic -r s3:https://s3.example.com/bucket backup /data

Restaurar desde Restic

docker run --rm -v datenbank-volume:/data -v /pfad/zu/repo:/repo -e RESTIC_PASSWORD=meinpasswort \
  restic/restic -r /repo restore latest --target /data

Probar copias de seguridad

  • Restaurar regularmente una copia de seguridad en un volumen temporal.
  • Verificar que la aplicación inicia correctamente.
  • Abrir archivos importantes.
  • Comprobar la consistencia de las cadenas de copias de seguridad.

Consejos

  • Configurar copias de seguridad automatizadas.
  • Definir una política de retención, cuánto tiempo se conservan las copias.
  • Almacenar offsite y cifrado.
  • Detener contenedores antes de hacer la copia de seguridad o usar métodos seguros para la aplicación.
  • Monitorear registros.
  • Documentar el procedimiento de restauración de emergencia.

Problemas típicos

  • Contenedor en ejecución durante la copia de seguridad: Datos inconsistentes.
  • Volumen no encontrado: Nombre escrito incorrectamente.
  • Permisos perdidos: Copia de seguridad creada como root, restauración como otro usuario.
  • Copia de seguridad no probada: La restauración de emergencia no funciona.
  • Espacio de almacenamiento: Las copias de seguridad llenan el disco.
  • Cifrado olvidado: Contraseña no anotada.

Enlaces e información adicional

FAQ: Copias de seguridad de volúmenes Docker

¿Puedo simplemente copiar volúmenes Docker? Los contenedores en ejecución deben detenerse primero.

¿Con qué frecuencia debo hacer copias de seguridad? Al menos diariamente para datos importantes, con mayor frecuencia para bases de datos.

¿Son buenas las copias de seguridad con tar? Para casos simples sí, para setups más grandes, soluciones incrementales como Restic son mejores.

¿Dónde deben estar las copias de seguridad? Al menos en una ubicación externa, mejor en dos.

¿Cómo restauro un volumen? Extraer en un volumen existente o crear uno nuevo.

Fuentes y lecturas adicionales

Resumen: hacer copias de seguridad de volúmenes Docker de forma segura

Los volúmenes Docker son el corazón de los datos persistentes. Una buena estrategia de copias de seguridad combina backups regulares, consistentes, probados y replicados offsite. Para fines simples, las copias de seguridad con tar son suficientes; para setups profesionales, Restic o Duplicati son mejores. Los contenedores deben detenerse antes de hacer la copia de seguridad o emplear métodos seguros para la aplicación. Quien no solo crea copias de seguridad, sino que también las prueba regularmente, estará preparado para una situación de emergencia real.

Volver al blog
Share:

Entradas relacionadas