/etc/environment
我知道,使用 Ubuntu,您可以在;中设置环境变量的默认值。我在 Alpine linux 中看不到该文件。设置系统范围的默认值是否有不同的位置?
问问题
54256 次
2 回答
43
这似乎/etc/profile
是我能找到的最好的地方。至少,那里设置了一些环境变量:
export CHARSET=UTF-8
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
export PAGER=less
export PS1='\h:\w\$ '
umask 022
for script in /etc/profile.d/*.sh ; do
if [ -r $script ] ; then
. $script
fi
done
根据 的内容/etc/profile
,您可以创建一个.sh
扩展名为 in的文件,并且每次/etc/profile.d/
都必须通过才能加载 env 变量,例如.--login
docker exec -it container sh --login
于 2016-02-12T07:27:51.263 回答
13
如果您正在谈论 Alpine Docker 映像,那么您可以在 Dockerfile 中定义这些环境变量,如下所示。这里不需要--login
每次都经过。这些变量将自动在系统范围内全局可用。
FROM alpine
ENV GITHUB_TOKEN=XXXXXXXXXXXXXXXXXXXXXXX \
COMPOSER_HOME=/home/deploy/.composer
您还可以在 /etc/profile 中定义您的别名、环境等,并ENV
在 Dockerfile 中定义如下所示以自动获取配置文件。
FROM alpine
ENV GITHUB_TOKEN=XXXXXXXXXXXXXXXXXXXXXXX \
COMPOSER_HOME=/home/deploy/.composer
ENV ENV="/etc/profile"
于 2018-11-06T21:59:26.060 回答