1. ホーム
  2. copy

[解決済み] Dockerfileのコピーでサブディレクトリ構造を維持する

2022-03-23 21:36:53

質問

ローカルホストから構築したDockerイメージに、いくつかのファイルやフォルダをコピーしようとしています。

ファイルはこのようなものです。

folder1
    file1
    file2
folder2
    file1
    file2

こんな感じのコピーにしたいんです。

COPY files/* /files/

しかし、すべてのファイルは/files/に配置されています。Dockerで、ファイルをディレクトリにコピーするだけでなく、サブディレクトリ構造を維持する方法はありますか?

どのように解決するのですか?

このDockerfileを使用して、COPYからstarを削除します。

FROM ubuntu
COPY files/ /files/
RUN ls -la /files/*

構造がある。

$ docker build .
Sending build context to Docker daemon 5.632 kB
Sending build context to Docker daemon 
Step 0 : FROM ubuntu
 ---> d0955f21bf24
Step 1 : COPY files/ /files/
 ---> 5cc4ae8708a6
Removing intermediate container c6f7f7ec8ccf
Step 2 : RUN ls -la /files/*
 ---> Running in 08ab9a1e042f
/files/folder1:
total 8
drwxr-xr-x 2 root root 4096 May 13 16:04 .
drwxr-xr-x 4 root root 4096 May 13 16:05 ..
-rw-r--r-- 1 root root    0 May 13 16:04 file1
-rw-r--r-- 1 root root    0 May 13 16:04 file2

/files/folder2:
total 8
drwxr-xr-x 2 root root 4096 May 13 16:04 .
drwxr-xr-x 4 root root 4096 May 13 16:05 ..
-rw-r--r-- 1 root root    0 May 13 16:04 file1
-rw-r--r-- 1 root root    0 May 13 16:04 file2
 ---> 03ff0a5d0e4b
Removing intermediate container 08ab9a1e042f
Successfully built 03ff0a5d0e4b