我在ubuntu 16.04上的docker文件中使用COPY命令。我收到错误,因为目录不存在这样的文件或目录。在下面的docker文件中,我想将工作空间目录中的目录“auth”复制到docker镜像(在path / home / ubuntu中),然后构建映像。
FROM ubuntu:16.04
RUN apt-get update
COPY /home/ubuntu/authentication/workspace /home/ubuntu
WORKDIR /home/ubuntu/auth
一个Dockerfile COPY
命令只能引用上下文下的文件 - Dockerfile的当前位置,也就是.
,所以你现在有几个选项:
COPY ./path/to/content /home/ubuntu
访问它),它可能会很棒。但有时候你不想要它。运行容器时,添加-v
选项:
docker run [....] -v /home/ubuntu/authentication/workspace:/home/ubuntu [...]
请注意,卷的设计是因为您在容器dir(/ home / ubuntu)中所做的任何更改都会影响主机端的绑定目录(/ home / ubuntu / authentication / workspace),反之亦然。
docker build . -f /path/to/Dockerfile
所以现在在他的Dockerfile中他可以引用/ home / ubuntu / authentication / workspace作为他的上下文(.
)