Estoy planeando mover los datos de la ventana acoplable (imágenes y contenedores) a una unidad separada, ya que requieren mucho espacio.
Como sé, puedo moverme /var/lib/docker
a una unidad separada y crear un enlace suave a ella. Pero he leído que BTRFS es la mejor opción de sistema de archivos para Docker.
Pero sospecho que no es suficiente formatear el disco externo en BTRFS y moverle la carpeta existente. Como veo, el contenido de esta carpeta depende del sistema de archivos utilizado.
¿Cómo puedo mover (recrear) correctamente la carpeta acoplable (imágenes y contenedores) en el disco externo con un sistema de archivos diferente?
Respuesta1
Como usted dijo, simplemente mover o copiar las imágenes/contenedores de la ventana acoplable de la unidad formateada AUFS a BTRFS predeterminada no funcionará. Entonces, como primer paso, puede enviar todos sus contenedores como imágenes y usar docker save
comandos para guardar las imágenes como archivos .tar y luego, una vez que haya preparado Docker para usar btrfs, ejecute docker load
para cargar las imágenes en el nuevo controlador de almacenamiento.
Los pasos serían más o menos los siguientes: esto es lo que hice en mi caja de Ubuntu 14.10.
- Guarda tus imágenes
docker save IMAGEID > /tmp/redis.tar
- preparar btrfs
mkfs.btrfs /dev/sdb mkdir /var/lib/docker-btrfs montar /dev/sdb /var/lib/docker-btrfs/
- Detenga Docker y configúrelo para que utilice btrfs y ejecútelo.
parada de la ventana acoplable de servicio ventana acoplable -d -s btrfs --graph="/var/lib/docker-btrfs" -H unix:///var/run/docker.sock
El paso anterior también se puede realizar modificando /etc/default/docker.
- Cargue las imágenes.
carga de la ventana acoplable --entrada /tmp/redis.tar
Debería poder ver las imágenes y ejecutar contenedores desde aquí. Para los contenedores, también puedes probar los métodos export
y import
, aunque nunca he probado ese.