menu Menu

Cómo hacer backup de un Docker container

Versión "command line" (CLI).

Versión "command line" (CLI).

Sugiero este procedimiento para almacenar y resguardar un Docker container en una imagen, también es útil si se desea migrar el container, por ejemplo, a otra máquina host o a una virtual machine diferente.

1) Obtener el CONTAINER ID del contenedor que se desea resguardar:

docker container lsCode language: Bash (bash)

Ejemplo de output:

CONTAINER ID   IMAGE                     COMMAND                  CREATED       STATUS       PORTS                      NAMES
327c5a36f181   n8nio/n8n:latest-debian   "/docker-entrypoint.…"   2 hours ago   Up 2 hours   127.0.0.1:5678->5678/tcp   n8n-docker-n8n-1Code language: plaintext (plaintext)

2) Crear commit local para generar docker image:

docker container commit -a "Gustavo Salvini <gsalvini@ecimtech.com>" -m "n8n is working really well now" CONTAINER_IDCode language: Bash (bash)

3) Obtener el ID de la imagen:

docker image lsCode language: Bash (bash)

Ejemplo de output:

REPOSITORY   TAG             IMAGE ID       CREATED          SIZE
<none>       <none>          dd398237d293   13 minutes ago   1.7GB
n8nio/n8n    latest-debian   b6af059e43af   28 hours ago     1.7GBCode language: plaintext (plaintext)

4) Copiar IMAGE_ID:

docker image save -o <saved_image_filename>.tar <IMAGE ID>Code language: Bash (bash)

5) Comprimir <saved_image_filename>.tar

Parámetros opcionales:

  • -k : no elimina el archivo original (<filename>.tar).
  • -v : modo “verbose”, informa el porcentaje en la reducción de tamaño.
gzip -vk <saved_image_filename>.tar Code language: Bash (bash)

Con esto se va a crear el archivo <saved_image_filename>.tar.gz

Ejemplo:

gzip -vk 20220923-n8n-docker-ecimtech-PROD_v1.tarCode language: Bash (bash)

Ejemplo de output:

20220923-n8n-docker-ecimtech-PROD_v1.tar:    64.1% -- created 20220923-n8n-docker-ecimtech-PROD_v1.tar.gz
Code language: plaintext (plaintext)

6) Descargar y guardar en un lugar seguro el archivo descargardo <saved_image_filename>.tar.gz (por ejemplo por sftp)

development devops Docker Linux


Previous Next

Leave a Reply

Your email address will not be published. Required fields are marked *

Cancel Post Comment

keyboard_arrow_up