我在 ubuntu 16.04 之上的 docker 文件中使用 COPY 命令。我收到错误,因为没有这样的文件或目录,即使该目录存在。在下面的 docker 文件中,我想将工作空间目录中存在的目录“auth”复制到 docker 镜像(在路径/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 [...]
请注意,卷的设计使您在容器目录(/home/ubuntu)中所做的任何更改都会影响主机端(/home/ubuntu/authentication/workspace)上的绑定(bind)目录,反之亦然。
docker build . -f /path/to/Dockerfile
所以现在在他的 Dockerfile 中,他可以将/home/ubuntu/authentication/workspace 作为他的上下文(
.
)
关于docker - 解决 docker 文件中 COPY 命令中的目录路径错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55326779/