Estoy tratando de copiar una serie de archivos y carpetas a una construcción de imagen de acoplador desde mi host local.
Los archivos son así:
folder1
file1
file2
folder2
file1
file2
Estoy tratando de hacer la copia así:
COPY files/* /files/
Sin embargo, todos los archivos se colocan en / files / ¿hay alguna manera en Docker para mantener la estructura del subdirectorio y copiar los archivos en sus directorios?
copy
docker
dockerfile
usuario1220022
fuente
fuente
Respuestas:
Elimine la estrella de COPY, con este Dockerfile:
La estructura está ahí:
fuente
COPY files/*1 /files/
?RUN ls -la /files/*
directamente desde la salida de la consola dedocker build
. Así que en su lugar fui ssh al contenedor directamente para hacerlols
directamente en el host, condocker exec -it <container name> /bin/bash
Alternativamente, puede usar un "." en lugar de *, ya que esto tomará todos los archivos en el directorio de trabajo, incluya las carpetas y subcarpetas:
fuente
Para fusionar un directorio local en un directorio dentro de una imagen, haga esto. No eliminará los archivos ya presentes en la imagen. Solo agregará archivos que estén presentes localmente, sobrescribiendo los archivos en la imagen si ya existe un archivo con el mismo nombre.
fuente