我有一个脚本,其中将一些路径导出到配置文件。该脚本将复制到Dockerfile中。问题是在运行容器时路径未得到反映。仅当您在容器的source .profile
文件夹中运行/root
时,它才会反映出来。我的脚本中也有source .profile
,但这似乎不起作用。我是Docker的新手。我如何在容器运行时设置它,而无需用户source .profile
?
答案 0 :(得分:1)
使用ENV值。
ENV值可用于容器,但在Docker构建期间,从引入它们的行开始,还可以使用RUN样式的命令。
在docker文件中:
# no default value
ENV hey
# a default value
ENV foo /bar
# or ENV foo=/bar
或者,如果您使用的是docker-compose,则可以使用.env文件;如果没有,您还可以将--env-file arg传递给docker run命令。
env_var_name=another_value
参考:docs
除了官方的方式以外,您可以执行以下操作:
ADD yourenvfile /tmp
RUN cat /tmp/yourenvfile >> /etc/environment
/ etc / environment设置系统范围的环境变量。