源环境文件在docker中不起作用

时间:2017-10-19 12:14:32

标签: docker dockerfile

我在Dockerfile中有这一行

RUN /bin/bash -c ". setup.sh ; echo $LD_LIBRARY_PATH ; make"

LD_LIBRARY_PATH在setup.sh中设置。但是,当我运行docker build .时,echo指令只会打印一个空字符串,而make会为未找到的库提供错误。

从Stackoverflow和其他地方的许多答案中,我希望打印出这条路径。

我错过了什么?提前致谢

1 个答案:

答案 0 :(得分:1)

在Dockerfile中,行:

RUN /bin/bash -c ". setup.sh ; echo $LD_LIBRARY_PATH ; make"

将导致$LD_LIBRARY_PATH变量由docker本身展开(您可以使用ARGENV行设置该变量)。要使容器中的shell扩展变量,只需使用反斜杠转义它:

RUN /bin/bash -c ". setup.sh ; echo \$LD_LIBRARY_PATH ; make"