docker image save
| Descripción | Guarda una o más imágenes en un archivo tar (enviado a STDOUT por defecto) |
|---|---|
| Uso | docker image save [OPTIONS] IMAGE [IMAGE...] |
| Alias | docker save |
Descripción
Produce un repositorio empaquetado en tar en el flujo de salida estándar.
Contiene todas las capas principales y todas las etiquetas + versiones, o el repo:tag especificado,
para cada argumento proporcionado.
Opciones
| Opción | Predeterminado | Descripción |
|---|---|---|
-o, --output | Escribe en un archivo en lugar de STDOUT | |
--platform | API 1.48+
Guarda solo la(s) plataforma(s) indicada(s). Formateado como una lista separada por comas de os[/arch[/variant]] (p. ej., linux/amd64,linux/arm64/v8) |
Ejemplos
Crear un respaldo que luego se pueda usar con docker load.
$ docker save busybox > busybox.tar
$ ls -sh busybox.tar
2.7M busybox.tar
$ docker save --output busybox.tar busybox
$ ls -sh busybox.tar
2.7M busybox.tar
$ docker save -o fedora-all.tar fedora
$ docker save -o fedora-latest.tar fedora:latest
Guardar una imagen en un archivo tar.gz usando gzip
Puedes usar gzip para guardar el archivo de la imagen y hacer que el respaldo sea más pequeño.
$ docker save myimage:latest | gzip > myimage_latest.tar.gz
Seleccionar etiquetas específicas
Incluso puedes seleccionar etiquetas específicas de un repositorio de imágenes.
$ docker save -o ubuntu.tar ubuntu:lucid ubuntu:saucy
Guardar una plataforma específica (--platform)
La opción --platform te permite especificar qué variante de plataforma de la
imagen guardar. Por defecto, docker save guarda todas las variantes de plataforma que
están presentes en el almacén de imágenes del demonio. Usa la opción --platform
para especificar qué variante de plataforma de la imagen deseas guardar. Se produce un error
si la plataforma indicada no está presente en el almacén de imágenes local.
La opción de plataforma toma el formato os[/arch[/variant]]; por ejemplo,
linux/amd64 o linux/arm64/v8. La arquitectura y la variante son opcionales
y, si se omiten, toman por defecto la arquitectura nativa del demonio.
El siguiente ejemplo descarga la variante RISC-V de la imagen alpine:latest
y la guarda en un archivo tar.
$ docker pull --platform=linux/riscv64 alpine:latest
latest: Pulling from library/alpine
8c4a05189a5f: Download complete
Digest: sha256:beefdbd8a1da6d2915566fde36db9db0b524eb737fc57cd1367effd16dc0d06d
Status: Downloaded newer image for alpine:latest
docker.io/library/alpine:latest
$ docker image save --platform=linux/riscv64 -o alpine-riscv.tar alpine:latest
$ ls -lh image.tar
-rw------- 1 thajeztah staff 3.9M Oct 7 11:06 alpine-riscv.tar
El siguiente ejemplo intenta guardar una variante de plataforma de alpine:latest
que no existe en el almacén de imágenes local, lo que resulta en un error.
$ docker image ls --tree
IMAGE ID DISK USAGE CONTENT SIZE IN USE
alpine:latest beefdbd8a1da 10.6MB 3.37MB
├─ linux/riscv64 80cde017a105 10.6MB 3.37MB
├─ linux/amd64 33735bd63cf8 0B 0B
├─ linux/arm/v6 50f635c8b04d 0B 0B
├─ linux/arm/v7 f2f82d424957 0B 0B
├─ linux/arm64/v8 9cee2b382fe2 0B 0B
├─ linux/386 b3e87f642f5c 0B 0B
├─ linux/ppc64le c7a6800e3dc5 0B 0B
└─ linux/s390x 2b5b26e09ca2 0B 0B
$ docker image save --platform=linux/s390x -o alpine-s390x.tar alpine:latest
Error response from daemon: no suitable export target found for platform linux/s390x