我有以下项目结构:
.
..
project/
docker/cli/Dockerfile
docker-compose.yml
在docker-compose.yml
我有以下配置:
cli:
build: docker/cli
在我的Dockerfile中的某个地方:
COPY . /app
现在的问题是,当docker-compose build cli
码头工作者在我的图片中复制docker/cli/
中/app
的内容时。这是有道理的,因为这是我docker/cli/Dockerfile
的相对路径。有没有办法告诉我的docker-compose.yml
配置路径应该是不同的(即我的项目的根目录,实际的项目文件是什么)?
答案 0 :(得分:13)
您可以在docker-compose文件中使用context
指令的build
属性。
version: '2'
services:
cli:
build:
context: .
dockerfile: docker/cli/Dockerfile
这应该按照要求工作。 context
是发送到docker守护程序进行构建的内容。您还需要project
目录中的.dockerignore文件,以确保只发送您需要的文件。