Docker中的Docker构建期间的不同主目录

时间:2015-02-21 18:43:54

标签: docker dockerhub

我发现在我的Ubuntu 14.04主机和Docker Hub自动构建中构建docker镜像之间存在一个奇怪的区别。

这是我的Dockerfile:

FROM buildpack-deps:wheezy-scm
RUN echo $HOME

这是我机器的输出:

 ---> 2afbec25f6f6
Step 1 : RUN echo $HOME
 ---> Running in 6074455e13c0
/
 ---> 0cb1b6141f93
Removing intermediate container 6074455e13c0
Successfully built 0cb1b6141f93

这个来自Docker中心:

---> 2afbec25f6f6
Step 1 : RUN echo $HOME
/root
---> 4c781d2d7d72
Successfully built 4c781d2d7d72

请注意不同的HOME目录:/root而不是/。谁能解释一下我发生了什么?

这是我的Docker版本(我已经安装了标准的docker.io Ubuntu软件包):

$ docker version
Client version: 1.0.1
Client API version: 1.12
Go version (client): go1.2.1
Git commit (client): 990021a
Server version: 1.0.1
Server API version: 1.12
Go version (server): go1.2.1
Git commit (server): 990021a

1 个答案:

答案 0 :(得分:3)

有效地,$HOME发生了变化,并且在Docker发布v1.0后合并了这些变化。我已经构建了你提供的Dockerfile,它向我显示$HOME=/root(我使用Docker v1.5.0)。查看Docker Issue #2968及相关提交以获取更多详细信息。