【问题标题】:How to get the id/name of the container in which my web application is running to serve the current user request如何获取运行我的 Web 应用程序以服务当前用户请求的容器的 ID/名称
【发布时间】:2018-03-23 11:23:23
【问题描述】:

我们正在使用 Docker 和 Kubernetes 将我的 .Net Web 应用程序容器化并扩展到 8-9 个副本。所以我们安装了 Dockers(在我的 Win 10 机器上)并使用了 Linux 容器。

编排由 Kubernetes 完成。我想获取运行我的 Web 应用程序以服务当前用户请求的容器的名称/ID。

找不到从我的 .Net Web 应用程序中获取容器 ID/名称的方法。请分享您对此的看法。

问候

【问题讨论】:

  • 您是否尝试过在代码中调用System.Environment.MachineName?它应该返回运行 dotnet 代码的容器 ID。

标签: kubernetes kubernetes-helm google-kubernetes-engine kubernetes-health-check kubernetes-ingress


【解决方案1】:

您可以将 Pod 字段公开为环境变量,metadata.name 字段将包含 Pod 的名称。

文档和示例:https://kubernetes.io/docs/tasks/inject-data-application/environment-variable-expose-pod-information/#use-container-fields-as-values-for-environment-variables

编辑: 您还可以使用@vahdet 之前评论的System.Environment.MachineName。容器的主机名是 pod id。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多