IBM Cloud Docs
入门

入门

本教程使用 样本应用程序 来演示如何将 IBM Cloud 中的 Cloud Foundry 应用程序连接到 IBM Cloud® Messages for RabbitMQ 服务。 应用程序创建,读取和写入使用通过应用程序的 Web 界面提供的数据的数据库。

如果您已创建部署并且想要连接到 RabbitMQ,那么可以跳至 获取连接字符串连接到 RabbitMQ 管理插件

准备工作

创建 Messages for RabbitMQ 服务实例

从 IBM Cloud 目录中的 Messages for RabbitMQ 页面 创建 Messages for RabbitMQ 服务。

选择要在其中供应服务的服务名称,区域,组织和空间,对于 选择数据库版本 字段,选择 最新首选版本。 在此示例中,服务名称为 "example-rabbitmq"。

单击创建以供应服务。 供应可能需要一段时间才能完成。 在供应服务时,您将返回到 IBM Cloud 仪表板

在供应完成之前,无法将应用程序连接到服务。

从 GitHub 克隆 Hello World 样本应用程序

使用以下命令从终端将 Hello World 应用程序克隆到本地环境:

git clone -b node git@github.com:IBM-Cloud/clouddatabases-helloworld-cloudfoundry-examples.git

安装应用程序依赖项

使用 npm 来安装依赖项。

在终端中,将目录切换到样本应用程序所在的位置。

安装 package.json 文件中列出的依赖项。

npm install

下载并安装 IBM Cloud CLI 工具

IBM Cloud CLI 工具是用于从终端或命令行与 IBM Cloud 通信的工具。 有关更多信息,请参阅 下载并安装 IBM Cloud CLI

连接到 IBM Cloud

在命令行工具中连接到 IBM Cloud,并遵循提示进行登录。

ibmcloud login

如果您具有联合用户标识,请使用 ibmcloud login --sso 命令使用单点登录标识登录。 请参阅使用联合标识登录以了解更多信息。

确保以正确的 IBM Cloud 组织和空间为目标。

ibmcloud target --cf

通过使用创建服务时使用的相同值,从提供的选项中进行选择。

为数据库服务创建 Cloud Foundry 别名

不推荐使用 IBM® Cloud Foundry。 截至 2022 年 11 月 30 日,无法创建新的 IBM® Cloud Foundry 应用程序,只有现有用户才能部署应用程序。 支持结束时间为 2023 年 6 月 1 日。 将删除 2023 年 6 月 1 日仍然存在的任何实例。 有关更多信息,请参阅 废弃 IBM Cloud Foundry

通过为 IBM® Cloud Foundry 应用程序提供 IBM® Cloud Foundry 别名,使其可发现数据库服务。

ibmcloud resource service-alias-create alias-name --instance-name instance-name

别名可以与数据库服务实例名称相同。 例如,对在步骤 1 中创建的数据库使用此命令。

ibmcloud resource service-alias-create example-rabbitmq --instance-name example-rabbitmq

更新应用程序的清单文件

IBM Cloud 使用清单文件 manifest.yml 将应用程序与服务相关联。 执行以下步骤创建清单文件。

在编辑器中,打开新文件并添加以下文本:

---
applications:
- name:    example-helloworld-nodejs
  routes:
  - route: example-helloworld-nodejs.us-south.cf.appdomain.cloud
  memory:  128M
  services:
    - example-rabbitmq

route 值更改为唯一的值。 您选择的路径确定应用程序 URL 的子域: <route>.{region}.cf.appdomain.cloud。 确保 {region} 与部署应用程序的位置匹配。

更改 name 值。 您选择的名称将显示在 IBM Cloud 仪表板中。

更新 services 值以与您在 为数据库服务创建 Cloud Foundry 别名 中创建的服务的别名相匹配。

将应用程序推送到 IBM Cloud。

如果未从步骤 1 完成服务供应,那么此步骤将失败。 您可以在 IBM Cloud _仪表板_上检查其进度。

推送应用程序时,它会自动绑定到清单文件中指定的服务。

ibmcloud cf push

检查应用程序是否已连接到 Messages for RabbitMQ 服务

转至 Messages for RabbitMQ 服务仪表板

从仪表板菜单中选择 连接。 您的应用程序列示在 _已连接的应用程序_下。

如果未列出应用程序,请重复步骤 7 和 8,确保在 manifest.yml 中输入了正确的详细信息。

使用应用程序

现在,访问 <route>.{region}.cf.appdomain.cloud/ 时,您可以看到 Messages for RabbitMQ 集合的内容。 添加词及其定义时,会将其添加到数据库并显示。 如果停止并重新启动应用程序,那么现在将列出已添加的任何词和定义。

本地运行应用程序

可以不将应用程序推送到 IBM Cloud,而改为在本地运行应用程序,以测试它与 Messages for RabbitMQ 服务实例的连接。 要连接到服务,需要创建一组服务凭证。

  • 从主菜单中选择 服务凭证 以打开“服务凭证”视图。
  • 单击新建凭证
  • 选择凭证的名称,然后单击添加
  • 现在将列出您的新凭证。 单击表中相应行中的查看凭证以查看凭证,然后单击复制图标以复制凭证。
  • 在您选择的编辑器中,创建包含以下内容的新文件,然后插入您的凭证,如下所示:
{
  "services": {
    "messages-for-rabbitmq": [
      {
        "credentials": INSERT YOUR CREDENTIALS HERE
      }
    ]
  }
}
  • 在样本应用程序所在的目录中将该文件另存为 vcap-local.json

为了避免在将应用程序推送到 GitHub 或 IBM Cloud时意外公开凭证,请确保包含凭证的文件列示在相关忽略文件中。 如果在应用程序目录中打开 .cfignore.gitignore,那么可以看到这两个目录中都列出了 vcap-local.json。 将应用程序推送到 GitHub 或 IBM Cloud时上载的文件中不包含此内容。

现在启动本地服务器。

npm start

该应用程序现在正在 http://localhost:8080 上运行。 您可以向 Messages for RabbitMQ 数据库添加字词和定义。 当您停止并重新启动应用程序时,您添加的任何词都会在您刷新页面时显示。

后续步骤

请查看 IBM Cloud 上 RabbitMQ 的最佳实践

要了解有关 样本应用程序 工作方式的更多信息,您可以阅读应用程序的自述文件或 server.js 中的代码注释,其中提供了有关应用程序功能的一些信息。

要开始探索 Messages for RabbitMQ 服务,请查看有关服务仪表板的以下主题: