我有一个Docker文件,其中列出了环境变量,如下所示:
ENV WORKGROUP "my-workgroup"
在python文件中,我正在按如下方式访问它:
os.environ['WORKGROUP']
当我构建码头工人时,它失败并显示以下错误:
KeyError: 'WORK_GROUP'
原因是某些环境变量具有一些默认值,我需要在 docker 中设置这些默认值。我可以在需要时在 docker 运行命令中覆盖这些。任何想法我如何实现这样的场景。谢谢。
我通常在Dockerfile中这样做
ENV ENV_VAR=some_default_value
要启动该类型的图像并覆盖图像中的环境,您可以执行此操作
docker run --env ENV_VAR=value_to_override
启动映像时,ENV_VAR将具有some_default_value
或value_to_override
。(不在映像生成过程中(。os.environ['ENV_VAR']
看到这个价值就很好了。
您可以尝试docker build --no_cache
以确保完全重建映像。