本文档指导您使用 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