¿Pueden todos los volúmenes de Docker estar en una partición y sería bueno para fines de copia de seguridad -clonación-? (por ejemplo:/var/lib/docker/volumes/ en /dev/sdb1 @fstab)

¿Pueden todos los volúmenes de Docker estar en una partición y sería bueno para fines de copia de seguridad -clonación-? (por ejemplo:/var/lib/docker/volumes/ en /dev/sdb1 @fstab)

Estoy pensando en migrar toda nuestra infraestructura de documentos y hojas de cálculo desde un antiguo servidor Samba independiente a una de esas populares soluciones autohospedadas y estoy tratando de realizar la mejor (re)instalación fácil y duradera, propensa a errores. He facilitado la realización de la primera instalación con mi propio archivo Docker-Compose basado en ejemplos.

Tiene multitud de contenedores, que incluyen base de datos, servidor web, generador de certificados y validador.

Parece muy complejo hacer una copia de seguridad para un novato de Docker como yo, especialmente porque algunos sitios web dicen que ni siquiera debería tocar /var/lib/docker/volumes/ y me temo que los administradores de paquetes o la instalación/actualización de Docker podrían romperlo.

Para mí, parece que la forma más rápida y sencilla es sencilla:

  • systemctl detener la ventana acoplable

  • docker save(s);docker exporta(s) contenedores a tars

  • clonezilla /dev/sdb1 a una imagen o disco del mismo tamaño (si /var/lib/docker/volumes/ está montado en /dev/sdb1)

y en el nuevo servidor de la máquina futura cuando sea necesario:

  • restaurar la imagen/dispositivo de clonezilla y montarlo en /var/lib/docker/volumes
  • instalar e iniciar la ventana acoplable
  • carga(s) de la ventana acoplable; importación(es) de docker alquitranes

Me temo que tal vez el contenedor de base de datos no se conectaría a su volumen y perdería los inicios de sesión y las versiones, pero perder archivos es más difícil por lo que parece.

Por lo que tengo entendido, las copias de particiones sector por sector toman minutos, mientras que millones de archivos cp -R tomarían horas, y esos pasos me hacen sentir realmente más seguro al volver a ejecutar Docker-compose para actualizar los motores web y de base de datos de cara al la web lo necesita seguro y parchado

¿Qué crees que es más seguro (rápido sería bueno, pero no realmente necesario) o estoy lo suficientemente seguro?

¡Gracias!

Respuesta1

¿Es obligatorio utilizar montajes de volumen? Si no, deberías marcar Bind mounts. Simplemente tome el sistema de archivos del servidor A, cópielo en el servidor B y móntelo como montaje Bind.

El lado positivo es que el esfuerzo de migración es mínimo y tienes la posibilidad de almacenarlo donde quieras en el servidor. No es necesario almacenarlo en /var/lib/docker/volumes. En el lado negativo, es necesario cuidar los ID y permisos de usuarios y grupos. Dependiendo de su configuración, esto podría resultar en un poco más de esfuerzo.

información relacionada