【发布时间】:2017-06-15 02:22:58
【问题描述】:
我有一个带有以下行的 Dockerfile:
COPY *.zip ~user1
用户user1 已经存在并且有一个主目录(即/home/user1)。当然,目标是将 zip 文件复制到该用户的主目录中,但上述结果是将 zip 文件复制到图像中字面意思为 /~user1 的文件中。
以下内容按预期工作:
COPY *.zip /home/user1
这是 Docker 中的一个错误,还是存在我不知道的与波浪号扩展相关的限制?
在 Mac 上使用 Docker 1.13.0。
【问题讨论】:
-
波浪号扩展是各种 unix/linux shell 的一个特性。任何这些 shell 都不处理复制命令。
-
如果您使用 docker compose commnad 为您的用户目录使用波浪号引用,它甚至都不起作用。见:github.com/docker/docker.github.io/pull/8538
标签: docker dockerfile tilde-expansion