我们有一个docker容器,运行在其中的程序希望设置多个envvars。有几种方法可以做到这一点,我想知道正确的方法是什么:
1-将envvars放入配置repo中,将其作为一个材质添加,使用docker--env file标志传递文件。缺点:似乎是因为通过了10个envvars。
3-在“作业配置”选项卡中定义环境变量。在docker运行期间使用-e标志传递它们。缺点:每个新作业都必须手动设置envvar,添加envvar需要在两个位置更改每个作业。
还有别的办法吗?
还有一个选项:编写一个小的shell脚本,将所有环境变量传递给 docker 以某个前缀开头。
docker
例如,你可以让它转动 DOCKER_A=a DOCKER_B=b 进入之内 -e A=a -e B=b ,并称之为
DOCKER_A=a
DOCKER_B=b
-e A=a -e B=b
docker $(./munge_env_vars) ...
source ),并且在添加另一个env变量时不需要修改两个位置。
source