Copiar los archivos desde el host a los contenedores de Docker

Esta traducción de: Copia de archivos de anfitrión para Container acoplable

Estoy tratando de construir una copia de seguridad y solución para los contenedores de Docker que trabajamos restauración. Estoy tratando de construir una copia de seguridad y solución para envases que utilizamos Docker restauración.

Acoplable imagen base que tiene tener el que la he he lo creado, ubuntu:base, quiero y no tienen que reconstruir el uno sea un momento con el cargador de muelle de archivos para el Agregar archivos a la misma. Imagen de base acoplable Tengo que he creado ubuntu:base, y no quiero tener que usar todos reconstrucción archivo acoplable para agregarlo al archivo.

La quiero a la crear un script que se extiende desde en el host de la máquina y crea un nuevo Contenedor nuevo un uso en el ubuntu:baseestibador de imágenes ya las copias luego archivos en ese contenedor. Quiero crear una desde un host script se está ejecutando, y el uso ubuntu:basede crear una nueva imagen de envase acoplable y luego copiar el archivo en el contenedor.

¿Cómo puedo copiar archivos desde el host al contenedor? ¿Cómo copiar archivos desde el host al contenedor?


# 1 planta

Referencia: https://stackoom.com/question/1Y7DT/ para copiar archivos desde el host a los contenedores de Docker


Casa # 2

La siguiente es una manera muy fea para hacer esto, pero puede funcionar.

docker run -i ubuntu /bin/bash -c 'cat > file' < file

Casa # 3

La solución se da a continuación, la solución es la siguiente:

A partir de la cáscara del estibador, 在中acoplable Shell,

root@123abc:/root#  <-- get the container ID

Desde el host del host

cp thefile.txt /var/lib/docker/devicemapper/mnt/123abc<bunch-o-hex>/rootfs/root

El archivo se puede copiar directamente en el lugar en el que el contenedor se sienta en el sistema de archivos. Este archivo se debe copiar directamente a la ubicación del contenedor en el sistema de archivos.


# 4 piso

Yo simplemente copiar el archivo directamente desde donde el contenedor se encuentra desde el ordenador central. Acabo de copiar los archivos desde la ubicación en el contenedor directamente desde el host.

Por ejemplo: Por ejemplo:

Primero busque el identificador del contenedor: primero identificar el número del contenedor:

root@**3aed62678d54**:/home#

Y luego desde el host, vamos a dicen que el archivo está en el directorio de inicio: a continuación, se encuentra en el directorio principal del anfitrión, asumirá el archivo:

root@saasdock:/home/dnepangue# cp cheering_nasa.gif /var/lib/docker/aufs/mnt/**3aed62678d54**a5df47a4a00a58bb0312009c2902f8a37498a1427052e8ac454b/home/

Volver al contenedor ... de nuevo en el contenedor ...

root@**3aed62678d54**:/home# ls cheering_nasa.gif

Casa # 5

  1. Obtener nombre del contenedor o corto Identificación del contenedor: obtener el nombre del contenedor o un corto de identificación de contenedores:

     $ docker ps 
  2. Obtener completa Identificación del contenedor: obtener el ID de contenedor completo:

     $ docker inspect -f '{{.Id}}' SHORT_CONTAINER_ID-or-CONTAINER_NAME 
  3. Copiar el archivo: Copiar el archivo:

     $ sudo cp path-file-host /var/lib/docker/aufs/mnt/FULL_CONTAINER_ID/PATH-NEW-FILE 

Ejemplo: Por ejemplo:

$ docker ps

CONTAINER ID      IMAGE    COMMAND       CREATED      STATUS       PORTS        NAMES

d8e703d7e303   solidleon/ssh:latest      /usr/sbin/sshd -D                      cranky_pare

$ docker inspect -f   '{{.Id}}' cranky_pare

o bien

$ docker inspect -f   '{{.Id}}' d8e703d7e303

d8e703d7e3039a6df6d01bd7fb58d1882e592a85059eb16c4b83cf91847f88e5

$ sudo cp file.txt /var/lib/docker/aufs/mnt/**d8e703d7e3039a6df6d01bd7fb58d1882e592a85059eb16c4b83cf91847f88e5**/root/file.txt

Casa # 6

La mejor manera de copiar el archivo en el contenedor que he encontrado es usar un comando de marcha ventana acoplable -vopción de instalar el directorio en el host.

Artículos originales publicados 0 · ganado elogios 136 · vistas 830 000 +

Supongo que te gusta

Origin blog.csdn.net/xfxf996/article/details/105240362
Recomendado
Clasificación