在容器内的python脚本中获取所有Docker env变量

时间:2018-08-01 19:08:11

标签: python linux docker environment-variables

我的docker映像中包含bash和python脚本: 1)entrypoint.sh(此脚本运行python文件); 2)parser.py

当开发人员运行容器时,他们可以传递带有MYPREFIX_ *之类前缀的env变量。

  

docker run name -e MYPREFIX_1 = true -e MYPREFIX_DEMO = 100 ...

有100多个可能的键,它们会不时更改(取决于远程配置文件)。

我想将所有变量传递给bash脚本,然后传递给python脚本。

我无法在Dockerfile中定义所有变量(键可以更改)。我也不能使用env_file。

有什么建议吗?

入口点的内容:

/usr/bin/python3 "/var/hocon-parser.py"
/usr/bin/curl -sLo /var/waves.jar "https://github.com/wavesplatform/Waves/releases/download/v$WAVES_VERSION/waves-all-$WAVES_VERSION.jar"
/usr/bin/java -jar /var/waves.jar /waves-config.conf

1 个答案:

答案 0 :(得分:1)

问题出在运行命令中。您不能在容器名称后传递env变量。此命令有效:

docker run -e MYPREFIX_1=true -e MYPREFIX_DEMO=100 ... name