本文翻译自: Cómo copiar imágenes acoplables de un host a otro sin usar un repositorio
¿Cómo transferir una imagen de estibador de una máquina a otra sin necesidad de utilizar un repositorio, no importa privada o pública? ¿Cómo acoplable transferencia de imágenes sin necesidad de utilizar un repositorio de un ordenador a otro ordenador, ya sea privada o público?
Estoy acostumbrado a jugar y crear mi propia imagen en VirtualBox, y cuando se acaba, trato de implementar en otras máquinas para tener el uso real. Solía jugar y crear su propia imagen en VirtualBox, una vez completada, trato de implementar a otros ordenadores para uso práctico.
Ya que se basa propia imagen en base a (como Red Hat Linux), no puede ser recreada a partir de una Dockerfile. Debido a que se basa en su propia imagen (tal como Red Hat Linux), y por lo tanto no puede ser recreada a partir Dockerfile.
¿Hay órdenes simples que puedo usar? Puedo utilizar un comando simple? U otra solución? O de otras soluciones?
Parece que los guardarlo / exportación puede el lograr un propósito similar, véase el qué hay en el -Diferencia el entre el Guardar y Exportar en estibador? Parece guardar / exportación puede lograr un propósito similar, ver ¿Cuál es la diferencia entre acoplable Guardar y exportar? , Y el que la prefiero en el save
Comando de mi caso. , Para mi caso, yo prefiero usar save
el comando.
# 1 planta
: Referencia copia Cómo Docker la imagen a otro host sin https://stackoom.com/question/1cQcf/ un repositorio de un anfitrión
Casa # 2
Para una exportación aplanada de un recipiente de sistema de archivos, el uso; a un contenedores de exportación del sistema de archivos planos, el uso;
docker export CONTAINER_ID > my_container.tar
Uso cat my_container.tar | docker import -
uso cat my_container.tar | docker import -
cat my_container.tar | docker import -
de la importación de dicha imagen. cat my_container.tar | docker import -
Imagen
Casa # 3
Tendrá que guardar la imagen del estibador como un archivo tar: Tendrá imagen acoplable a se guarda como un archivo tar:
docker save -o <path for generated tar file> <image name>
Una copia de su imagen para la entonces nueva nuevo sistema con archivo normal de transferencia de herramientas como cp
, scp
o rsync
(de Preferencia para archivos grandes). A continuación, utilice la herramienta de transferencia de archivos convencional (por ejemplo cp
, scp
o rsync
(preferido) para grandes términos archivos) para copiar las imágenes para el nuevo sistema. Después de eso, tendrá que cargar la imagen en acoplable: Después de eso, usted tiene que estar en la imagen se carga en acoplable:
docker load -i <path to image tar file>
PD: necesidad de mayo a usted por sudo
todos los comandos. PD: Es posible que necesite todos los comandos sudo
.
EDIT: Usted debe agregar el nombre de archivo (no solo directorio) con -o, por ejemplo: Editar: Se debe utilizar la -o añadir el nombre del archivo (no sólo el directorio), por ejemplo:
docker save -o c:/myfile.tar centos:16
# 4 piso
El asumir que usted necesita para Save the I couchdb-cartridge
¿Cuál de lo anterior Identificación del mencionado tiene 7ebc8510bc2c una imagen: Asumo que necesita para guardarlo como una imagen de ID de 7ebc8510bc2c couchdb-cartridge
:
stratos@Dev-PC:~$ docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
couchdb-cartridge latest 7ebc8510bc2c 17 hours ago 1.102 GB
192.168.57.30:5042/couchdb-cartridge latest 7ebc8510bc2c 17 hours ago 1.102 GB
ubuntu 14.04 53bf7a53e890 3 days ago 221.3 MB
Guardar la imagen ArchiveName a un archivo tar . Guarda la imagen en el archivo de alquitrán ArchiveName. En El por utilizará la I /media/sf_docker_vm/
a la Guardar en la imagen. Voy a utilizar la /media/sf_docker_vm/
imagen guardada.
stratos@Dev-PC:~$ docker save imageID > /media/sf_docker_vm/archiveName.tar
En La archiveName.tar a su copia de archivos nueva instancia nueva ventana acoplable un usando el método, la cosa funciona en su entorno, por ejemplo FTP
, SCP
, etc. utilizando cualquier método disponible en el entorno para copiar los archivos a una nueva instancias archiveName.tar Docker, por ejemplo FTP
, SCP
y así sucesivamente.
En La RUN docker load
el comando en su nueva nueva instancia y el Especificar en la ubicación del estibador. De alquitrán en el archivo de imagen para funcionar en la nueva instancia del estibador docker load
de comandos, y especifique la ubicación del archivo de imagen de alquitrán.
stratos@Dev-PC:~$ docker load < /media/sf_docker_vm/archiveName.tar
Un último, en la carrera de docker images
la orden para la comprobación de que el disponible ahora en la imagen. Por último, ejecute el docker images
comando para comprobar si la imagen ya está disponible.
stratos@Dev-PC:~$ docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
couchdb-cartridge latest 7ebc8510bc2c 17 hours ago 1.102 GB
192.168.57.30:5042/couchdb-cartridge latest bc8510bc2c 17 hours ago 1.102 GB
ubuntu 14.04 4d2eab1c0b9a 3 days ago 221.3 MB
El hallazgo del este favor el POST detallada . Por favor, encontrar el mensaje detallado .
Casa # 5
Un estibador imagen a través de SSH Transferencia, bzipping en encendido el contenido en la marcha: el transporte SSH imagen acoplable por e instantáneamente bzip contenido:
docker save <image> | bzip2 | \
ssh user@host 'bunzip2 | docker load'
También es una buena idea para poner pv
en en el centro de en el tubo de ver la forma de transferencia en el que está pasando: el pv
en el medio de la tubería también es una buena idea para ver el proceso de transmisión:
docker save <image> | bzip2 | pv | \
ssh user@host 'bunzip2 | docker load'
(Más información sobre la pv
: Página de inicio , el hombre Página ). (Sobre pv
más información: Inicio , páginas man ).
Casa # 6
Para guardar una imagen a cualquier ruta de archivo o compartido NFS lugar ver el siguiente ejemplo. Para guardar la imagen en cualquier ubicación de la ruta de acciones o de archivos NFS, consulte el siguiente ejemplo.
Obtener el id de la imagen haciendo: la adquisición de un ID de la imagen mediante la realización de las siguientes operaciones:
sudo docker images
Digamos que tiene una imagen con id " matriz de datos". Suponga que tiene un ID de foto "Data Matrix".
Guardar la imagen con id: guardar la imagen con un ID:
sudo docker save -o /home/matrix/matrix-data.tar matrix-data
Copiar la imagen de la trayectoria. Para cualquier host para copiar la imagen de la ruta de acceso a cualquier host. Ahora importar a su instalación local del estibador usando : Ahora, utilice el siguiente comando en la instalación local del estibador:
sudo docker load -i <path to copied image file>