Docker运行时,Docker中的环境variables

docker中,我有一个环境variables的问题。 当我运行命令:

$ docker run ubuntu /bin/bash -c "echo $HOME" 

我有回应:

 /Users/bylek 

但是当我运行:

 $ docker run -it ubuntu /bin/bash 

接着:

 root@5e079c47affa:/# echo $HOME 

我有:

 /root 

第二个答复是正确的。 为什么第一个命令从我的主机返回$ HOME值?

echo $HOME正在您的主机上进行评估,因为您没有得到正确的开关语法。 这是Linux,所以你需要单引号。

尝试用单引号替换双引号。

例如。 这是我得到的:

 bash-3.2$ docker run ubuntu /bin/bash -c 'echo $HOME' /root