创建指向现有实例的 bluemix postgresql 服务
create a bluemix postgresql service pointing to existing instance
我们有一组 SpringBoot 应用程序作为服务部署在 Bluemix 中。每个 Springboot 应用程序都有自己的数据库模式。当我们在每个应用程序的清单文件中提到属性时,这工作正常
- spring.datasource.url:
- spring.datasource.username:
- spring.datasource.password:
- spring.jpa.properties.hibernate.default_schema:
现在我们计划使用 cloudfoundry/bluemix 服务并将其绑定到单个应用程序,而不是传递属性。从 bluemix 控制台,我们可以创建一个 Postgresql 服务,但我们无法选择指向现有实例(在 compose 中创建)并传递数据库凭证。
我们能否通过 CLI 创建服务,将其指向现有的数据库实例并提供凭据?如果可以,我们该怎么做?
谢谢。
塔塔
在这种情况下,您需要创建一个用户提供的服务实例。
例如,创建一个名为 my-postgresqldb
的服务实例,然后绑定到您的应用程序:
$ cf cups my-postgresqldb -p '{"uri":"http://mydb.net", "port": 2000, "user":"admin", "password":"abcdefg"}'
$ cf bind-service your-application my-postgresqldb
在 Bluemix UI 中检查您的应用程序的 VCAP_SERVICES
,您可以看到如下内容:
"user-provided": [
{
"credentials": {
"password": "abcdefg",
"port": 2000,
"uri": "http://mydb.net",
"user": "admin"
},
"syslog_drain_url": "",
"label": "user-provided",
"name": "my-postgresqldb",
"tags": []
}
]
我们有一组 SpringBoot 应用程序作为服务部署在 Bluemix 中。每个 Springboot 应用程序都有自己的数据库模式。当我们在每个应用程序的清单文件中提到属性时,这工作正常
- spring.datasource.url:
- spring.datasource.username:
- spring.datasource.password:
- spring.jpa.properties.hibernate.default_schema:
现在我们计划使用 cloudfoundry/bluemix 服务并将其绑定到单个应用程序,而不是传递属性。从 bluemix 控制台,我们可以创建一个 Postgresql 服务,但我们无法选择指向现有实例(在 compose 中创建)并传递数据库凭证。
我们能否通过 CLI 创建服务,将其指向现有的数据库实例并提供凭据?如果可以,我们该怎么做?
谢谢。 塔塔
在这种情况下,您需要创建一个用户提供的服务实例。
例如,创建一个名为 my-postgresqldb
的服务实例,然后绑定到您的应用程序:
$ cf cups my-postgresqldb -p '{"uri":"http://mydb.net", "port": 2000, "user":"admin", "password":"abcdefg"}'
$ cf bind-service your-application my-postgresqldb
在 Bluemix UI 中检查您的应用程序的 VCAP_SERVICES
,您可以看到如下内容:
"user-provided": [
{
"credentials": {
"password": "abcdefg",
"port": 2000,
"uri": "http://mydb.net",
"user": "admin"
},
"syslog_drain_url": "",
"label": "user-provided",
"name": "my-postgresqldb",
"tags": []
}
]