docker-使用父目录和 docker 文件构建时出现构建错误

docker-compose build error when using parent dir & dockerfile for build

我有以下结构:

.
..
docker/cli/Dockerfile
tests/docker-compose.yml
docker-compose.yml

在我的 tests/docker-compose.yml 中,我定义了以下服务:

services:
  test:
    build:
      context: ../
      dockerfile: ../docker/cli/Dockerfile
  ...

什么时候做 docker-compose build 我得到:

Building test
ERROR: Forbidden path outside the build context: ../docker/cli ()

写完问题后,我真的找到了问题所在。当您在 docker-compose 中定义上下文时,dockerfile: 位是相对于该上下文的。所以正确的配置是:

  test:
    build:
      context: ../
      dockerfile: docker/cli/Dockerfile

我希望这对某人有所帮助...