【问题标题】:How to get Kubernetes external ip inside Kitura server如何在 Kitura 服务器中获取 Kubernetes 外部 IP
【发布时间】:2018-05-16 19:05:28
【问题描述】:

我使用kitura create 搭建了一个新项目,因此它附带了 CloudEnvironment,我升级到了版本 (7.1)。

我正在将 Kitura (2.3) 作为 Docker 映像部署到 IBM Kubernetes

我的问题是:如何在 Kitura 中获取 Kubernetes 外部 ip 地址


我遇到问题的部分是cloudEnv.url + "/callback",当部署到 Kubernetes 时是 localhost:8080/callback,但我需要它是真正的 ip:port。

到目前为止,我已经弄清楚了如何编写 Kubernetes 配置以将一些值传递给 Docker 容器,但是 CloudEnvironment 没有接收它们,并且我找不到 CloudEnvironment 的任何相关文档。

【问题讨论】:

    标签: docker kubernetes ibm-cloud kitura ibm-cloud-kubernetes


    【解决方案1】:

    https://github.com/IBM-Swift/CloudEnvironment

    CloudEnvironment(以前称为 CloudConfiguration)是一个便捷的 Swift 包,用于从各种云计算环境(例如但不限于 Cloud Foundry 和 Kubernetes)访问映射到 JSON 对象的环境变量。例如,要获取访问 Cloudant 数据库的凭据,在 Cloud Foundry 中运行时需要解析 VCAP_SERVICES 环境变量,而在 Kubernetes 中运行时要获取相同的凭据,可能需要解析名为 @ 的环境变量987654324@。换言之,获取特定环境值的路径可能因云环境而异。通过利用这个包,你可以让你的 Swift 应用程序在获取这些值时与环境无关。使用 CloudEnvironment 可以让您从应用程序的源代码中抽象出这些低级细节。

    您在名为 ma​​ppings.json 的文件中指定查找键和搜索模式。该文件必须存在于 Swift 项目根文件夹下的 config 文件夹中。您将使用该文件,因此应用可以获取环境变量。

    Here's a starter kit using a Swift Kitura server and clicking the Deploy to Cloud button will set up an example of everything on Kube automatically.

    【讨论】:

      猜你喜欢
      • 2018-08-27
      • 1970-01-01
      • 1970-01-01
      • 2015-11-19
      • 2018-06-06
      • 1970-01-01
      • 2017-10-21
      • 2014-10-09
      相关资源
      最近更新 更多