关于 Dockerfile 中 COPY 文件的问题

一、问题

通常我们会在 Dockerfile 文件所在的文件夹下执行 docker build 命令创建镜像,如下:

docker build -t ${image_name} .

通过此方式创建镜像的时候,需要注意的是如果在 Dockerfile 中使用 COPY 命令,那只能 COPY 与 Dockerfile 文件处于同一目录下的文件或者或者文件夹。如果我们要 COPY 不与 Dockerfile 文件处于同一目录下的文件或者或者文件夹在会报错,如下:

COPY failed: stat xxxx: no such file or directory

二、解决方案一

最简单的方案是,将所有涉及到的文件或者文件夹与 Dockerfile 放在同一个目录下,这样 COPY 命令就能找到文件或者目录了。

三、解决方案二:

无须进入到 Docerfile 文件所在目录,通过 “docker build -f xxx/xxx/xxx .” 中的 “-f” 来指定 Dockerfile 的完整路径,来解决这个问题。

上一篇:【ZZULIOJ】 Python 1017: 判断正整数位数


下一篇:【LeetCode.链表.138】复制复杂链表/复制带随机指针的链表,多图分析