通常情况bash设置全局环境变量:/etc/bash.bashrc
通常情况bash设置个人环境变量:~/.bashrc
但是docker再以非交互方式启动ubuntu容器时并不会执行上面的两个文件,而是直接执行指定的文件。因为下面的代码
此时需要配置环境变量需要使用参数 -e
docker container run -it -e LANG="en_US.UTF-8" -e LANGUAGE="en_US.UTF-8" -e PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/home/software/HLA_HD/hlahd.1.4.0/bin hla:v20220613
然后将此容器 commit 成 image
查看docker image的环境变量,docker image inspect
更为简单的办法:
因为环境变量是可以从 父shell 继承 到 子shell 中
1)依旧在 ~/.bashrc 中 配置环境变量 并 export 相应的环境变量
然后在docker容器指定的执行脚本中source ~/.bashrc
2) 这直接在docker容器指定的执行脚本中执行export 环境变量