Dockerfileで親ディレクトリにあるファイルを参照できない問題
2762 ワード
現象
├── nginx
| └── Dockerfile
├── statics
├── Dockerfile
└── docker-compose.yaml
├── nginx
| └── Dockerfile
├── statics
├── Dockerfile
└── docker-compose.yaml
Dockerfileから親ディレクトリにあるファイルを参照しようとしてもできませんでした。
nginx/Dockerfile
FROM nginx
ADD ../statics /var/www/
CMD ["nginx", "-g", "daemon off;", "-c", "/etc/nginx/nginx.conf"]
$ docker-compose up --build
Building nginx
Step 1/4 : FROM nginx
---> be1f31be9a87
Step 2/4 : ADD statics /var/www/
ERROR: Service 'nginx' failed to build: ADD failed: stat /var/lib/docker/tmp/docker-builder740600385/statics: no such file or directory
ADD
で失敗してしまいます。
解決
docker-compose.yamlでcontext
を親ディレクトリを含むようにすることで、ファイルを参照できるようになりました。
docker-compose.yaml
version: '3'
services:
nginx:
# build: ./nginx
build:
context: .
dockerfile: ./nginx/Dockerfile
container_name: proxy
ports:
- 80:80
api:
build: .
nginx/Dockerfile
FROM nginx
# ADD ../statics /var/www/
ADD statics /var/www/
CMD ["nginx", "-g", "daemon off;", "-c", "/etc/nginx/nginx.conf"]
Author And Source
この問題について(Dockerfileで親ディレクトリにあるファイルを参照できない問題), 我々は、より多くの情報をここで見つけました https://qiita.com/nanaco/items/f37edf84325fe47043fa著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .