首页 > 解决方案 > Docker 访问构建上下文之外的路径以进行 COPY

问题描述

如果我的项目是结构化的:

docker:
  ==> Dockerfile_1
source_code

在 Dockerfile1 我有:

COPY //source_code

如何将 source_code 文件夹添加到我的 dockerfile。我不断收到一条消息说:

COPY failed: Forbidden path outside the build context: ../source_code ()

标签: docker

解决方案


您不能使用构建上下文之外的路径 - 这是故意这样做的,以便您的容器应该由该目录中的文件完全指定。

您通常想要做的只是让 Dockerfile 与源代码一起存在 - 很少有理由需要它远离它。

另一种可能性是在您的源代码目录中并使用docker build -f /path/to/Dockerfile. 这使用起来会很麻烦,而且在我看来,我看不出有任何方式比将 Dockerfile 放在项目根目录中是合理的。


推荐阅读