🐥
Dockerで上位の階層をCOPYしたい時はビルドコンテキストの設定を変更する
ディレクトリ構成
.
├── Project1
│ ├── docker-compose.yaml
│ └── Dockerfile
└── Project2
失敗例
上記のようなディレクトリ構成の時、Project2をDockerイメージ内にコピーしようとdocker-compose.yaml
、Dockerfile
を以下のようにするとビルドに失敗する。
docker-compose.yaml
version: "3.8"
services:
master:
build:
context: .
dockerfile: Dockerfile
Dockerfile
FROM alpine:3.16
COPY ../Project2/ /Project2
成功例
上位の階層をCOPYしたい場合はcontext
を上位のディレクトリに変更する必要がある。
docker-compose.yaml
version: "3.8"
services:
master:
build:
context: ../
dockerfile: Project1/Dockerfile
Dockerfile
FROM alpine:3.16
COPY Project2/ /Project2
Discussion