我可以将外部服务 VCAP_SERVICES 注入我的应用吗?
Can I inject external service VCAP_SERVICES into my app?
如果我在一个 space、MY_ANALYTICS_SPACE 中有一个 MessageHub 服务,而我在另一个 space [=18] 中有一个应用程序=]MY_WEBAPPS_SPACE。这些 space 代表组织的两个不同部分,并且被设计为保持独立。
但是,像 MessageHub 这样的企业级集成技术可能跨越多个 space。
当服务和应用程序处于不同的 space 时,是否可以将 MessageHub 的连接详细信息注入到我的应用程序的 VCAP_SERVICES 中?
感谢您的提问。
是的,此功能由 user-provided 服务功能提供。
这里有一些示例 shell 脚本调用可以实现此目的:
cf target -s MY_ANALYTICS_SPACE
cf create-service messagehub standard common-messagehub
cf create-service-key common-messagehub Credentials-1
JSON=$(cf service-key common-messagehub Credentials-1 | tail -n +3)
cf target -s MY_WEBAPPS_SPACE
cf create-user-provided-service common-messagehub -p "${JSON}" \
|| cf update-user-provided-service common-messagehub -p "${JSON}"
如果我在一个 space、MY_ANALYTICS_SPACE 中有一个 MessageHub 服务,而我在另一个 space [=18] 中有一个应用程序=]MY_WEBAPPS_SPACE。这些 space 代表组织的两个不同部分,并且被设计为保持独立。
但是,像 MessageHub 这样的企业级集成技术可能跨越多个 space。
当服务和应用程序处于不同的 space 时,是否可以将 MessageHub 的连接详细信息注入到我的应用程序的 VCAP_SERVICES 中?
感谢您的提问。
是的,此功能由 user-provided 服务功能提供。
这里有一些示例 shell 脚本调用可以实现此目的:
cf target -s MY_ANALYTICS_SPACE
cf create-service messagehub standard common-messagehub
cf create-service-key common-messagehub Credentials-1
JSON=$(cf service-key common-messagehub Credentials-1 | tail -n +3)
cf target -s MY_WEBAPPS_SPACE
cf create-user-provided-service common-messagehub -p "${JSON}" \
|| cf update-user-provided-service common-messagehub -p "${JSON}"