将 RabbitMQ 设置为用户提供的服务

本文档指导您使用 Spring Cloud Foundry Connector,将应用绑定到未在 Kf Marketplace 中提供的 RabbitMQ 实例(包括 Marketplace 中的 RabbitMQ 一键部署)。这会使得 RabbitMQ 凭据注入您的应用中,就像通过 Marketplace 方案预配的服务一样。

准备工作

  • 确保已安装 RabbitMQ,并且可通过 Kf 集群访问它。
  • 确保已经为您的应用设置了 RabbitMQ。
  • 确保您已定位运行您的应用的空间。

创建用户提供的实例

为了让 Kf 成功地将应用绑定到您的 RabbitMQ 实例,最小环境变量是 URI(例如 amqp://username:password@host:port/vhost?query)。如果需要,可添加其他键值对。RabbitMQ 文档可提供创建 URI 字符串的帮助。参考以下示例应该足以完成基本部署任务。

kf cups service-instance-name -p '{"uri":"amqp://username:password@rabbitmq-host:5672"}' -t "rabbitmq"

绑定您的应用

至此已经创建了用户提供的服务,您可以将应用绑定到实例名称:

kf bind-service application-name service-instance-name

重启您的应用,以使更改生效:

kf restart application-name

您可以确认要提供给应用的新环境变量:

kf vcap-services application-name

更新用户提供的实例

如果环境(如 URI 中的密码或主机更新,或添加新的键值对)需要传递到与之绑定的应用,您可以更新用户提供的实例。

kf uups service-instance-name -p '{"uri":"new-uri", "some-new-key": "some-new-value"}'
kf unbind-service application-name service-instance-name
kf bind-service application-name service-instance-name

相关文档