我有一个现有的Db2 Warehouse on Cloud实例,它部署到组织和空间。现在,我想将该服务绑定到一个应用程序,以便使用 IBM Cloud Code Engine 进行部署。
ibmcloud ce application bind --name henriks-app --service-instance myDb2
myDb2 不作为 IAM 资源存在,因为它是 CF 资源。我将如何将两者结合在一起?看来我需要创建某种形式的自定义包装器。
我有一个现有的Db2 Warehouse on Cloud实例,它部署到组织和空间。现在,我想将该服务绑定到一个应用程序,以便使用 IBM Cloud Code Engine 进行部署。
ibmcloud ce application bind --name henriks-app --service-instance myDb2
myDb2 不作为 IAM 资源存在,因为它是 CF 资源。我将如何将两者结合在一起?看来我需要创建某种形式的自定义包装器。
将服务手动连接到代码引擎应用程序的最佳方法是将服务凭证添加到代码引擎密钥,然后使用环境变量或卷安装将该密钥附加到您的应用程序。
虽然您认为 Db2 Warehouse 不是典型的 IAM-Enabled 服务类型是正确的,但根据IBM Cloud Db2 Warehouse 文档,可以使用 IAM 服务 ID 和 API 密钥创建与 Db2 Warehouse 的客户端连接。
以下是我将 Db2 实例“绑定”到代码引擎应用程序的方式:
ibmcloud iam service-api-key-create mydb2key SERVICE_ID_NAME --output JSON > mydb2.json
哪里SERVICE_ID_NAME
ibmcloud ce secret create --name mydb2 --from-file MYDB2=mydb2.json
ibmcloud ce app update --name myapp --env-from-secret mydb2
应用程序更新完成后,您的应用程序将有权访问名为 的环境变量MYDB2
,该变量将具有包含您的 API 密钥的 JSON 对象字符串的值。
您将在 Code Engine 文档中找到有关创建机密和在应用程序中使用机密的更多信息。