如何在Docker文件中使用“ADD”命令包含Docker构建上下文之外的文件
从Docker文档中:
路径必须在构建的上下文中;您不能添加
../something/something,因为docker构建的第一步是
将上下文目录(和子目录)发送到docker守护程序
我不想重组我的整个项目只是为了适应Docker在这件事上。我想将所有Docker文件保存在同一子目录中
此外,Docker似乎还不(可能永远也不)支持符号链接:Dockerfile ADD命令在主机#1676上不遵循符号链接
我唯一能想到的另一件事是包括一个预构建步骤,将文件复制到Docker构建上下文中(并将我的版本控制配置为忽略这些文件)。还有比这更好的解决办法吗
解决此问题的最佳方法是使用-f独立于构建上下文指定Dockerfile
例如,此命令将允许ADD命令访问当前目录中的任何内容
docker构建-f docker文件/docker文件。
更新:Docker现在允许将Dockerfile置于构建上下文之外(在18.03.0-ce中修复)。所以你也可以这样做
docker build-f../Dockerfile。