Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Docker Compose:如何在构建时指定Docker文件的路径,就像在不同的目录中一样?_Docker_Docker Compose_Dockerfile - Fatal编程技术网

Docker Compose:如何在构建时指定Docker文件的路径,就像在不同的目录中一样?

Docker Compose:如何在构建时指定Docker文件的路径,就像在不同的目录中一样?,docker,docker-compose,dockerfile,Docker,Docker Compose,Dockerfile,docker构建-t test2-f测试/低集成/Dockerfile. 如果我需要从Dockerfile上方的目录复制文件,我可以通过调用 docker build-t image\u name-f path\u to\u docker\u file/Dockerfile. 从上面的目录 如何使用docker compose实现相同的行为?我希望docker compose与Dockerfile存在于同一目录中,使用Dockerfile进行构建,但最终调用它时,将其视为位于上述目录中,以便复制

docker构建-t test2-f测试/低集成/Dockerfile.

如果我需要从Dockerfile上方的目录复制文件,我可以通过调用

docker build-t image\u name-f path\u to\u docker\u file/Dockerfile.

从上面的目录

如何使用docker compose实现相同的行为?我希望docker compose与Dockerfile存在于同一目录中,使用Dockerfile进行构建,但最终调用它时,将其视为位于上述目录中,以便复制正确的文件。我试过了

docker-compose-f路径\u到\u docker\u文件\u和\u-compose/docker-compose.yml up


从上面的目录,但当从docker文件构建时,它会抱怨在构建时上面目录中的文件不存在以复制(这意味着它正在从docker文件所在的同一目录运行docker构建。我需要它从上面的目录运行构建)。

您可能需要使用
-p
标志

Usage:
  docker-compose [-f <arg>...] [options] [COMMAND] [ARGS...]
  docker-compose -h|--help

Options:
  -f, --file FILE             Specify an alternate compose file (default: docker-compose.yml)
  -p, --project-name NAME     Specify an alternate project name (default: directory name)
用法:
docker compose[-f…][options][COMMAND][ARGS…]
docker compose-h |--帮助
选项:
-f、 --file file指定一个备用合成文件(默认值:docker compose.yml)
-p、 --项目名称指定备用项目名称(默认值:目录名称)

可以这样做,在docker-compose.yml中添加
构建
,然后从上面的目录运行构建:

版本:“3.8”
服务:
您的服务:
生成:#“上下文”和“dockerfile”字段必须位于“生成”下
上下文:。
dockerfile:/dockerfile

build>context
:相对于docker compose命令运行目录<代码>生成>dockerfile:相对于
生成>上下文
目录。