COPY指令:
1 | COPY <src> <dest> |
我们在使用dockerfile构建docker镜像时,通常会用到COPY指令。COPY指令用于将系统本地的文件拷贝至docker镜像中。但是其中有一个地方需要特别注意:即build上下文.
在使用 docker build 命令通过 Dockerfile 创建镜像时,会产生一个 build 上下文(context)。所谓的 build 上下文就是 docker build 命令的 PATH 或 URL 指定的路径中的文件的集合。在镜像 build 过程中可以引用上下文中的任何文件,比如我们要介绍的 COPY 命令,就可以引用上下文中的文件。
默认情况下 docker build -t custom . 命令中的 . 表示build上下文为当前目录。
当然我们可以指定一个目录作为上下文,比如:
1 | docker build -t custom /home/linaro |
注意事项:
在使用COPY指令时,本地的源文件要位于build上下文中。
如果build上下文是当前目录,则源文件要位于dockerfile所在的当前目录。
例如:
1 | WORKDIR /work |
snmp目录要位于dockerfile所在的目录中
否则build过程中会报错: