【问题标题】:Use System Environment Variable in Docker Container C#在 Docker 容器 C# 中使用系统环境变量
【发布时间】:2019-05-23 08:02:27
【问题描述】:

我在 docker 容器中运行我的 webapi 项目,我无法使用我机器上设置的环境变量。我可以在运行容器上使用系统的环境变量吗?提前致谢

var env = Environment.ExpandEnvironmentVariables("kubes");
var env2 = Environment.GetEnvironmentVariable("kubes");

【问题讨论】:

    标签: c# docker asp.net-web-api


    【解决方案1】:

    宿主机上的环境变量在Docker容器内是不可用的,但是可以在启动容器的时候传入:

    docker run -e "deep=purple" -e today my-image
    

    -e 将在容器内设置一个环境变量。在示例中,第一个选项将环境变量deep 设置为purple,而第二个选项将变量today 设置为与主机上的today 变量相同的值。例如。如果在您的机器上设置了today,它也将在容器内设置为相同的值;它有效地传递它。

    Docker 文档:click

    【讨论】:

    • 我可以在我的 docker 文件中设置这个选项吗?
    • 您必须将环境变量作为构建参数传递,然后使用 ENV 分配它们。看看这个答案:stackoverflow.com/a/34600106/1339804
    猜你喜欢
    • 2020-12-27
    • 1970-01-01
    • 2019-04-17
    • 2013-06-17
    • 2016-05-06
    • 2020-05-29
    • 1970-01-01
    • 1970-01-01
    • 2016-05-30
    相关资源
    最近更新 更多