部署第一个应用程序

学习目标

  • 使用本机 Cloud Foundry 部署或多目标应用程序部署,将第一个应用程序部署到 SAP BTP Cloud Foundry 运行时。

业务场景

在本练习中,您将第一个云本机应用程序部署到 SAP BTP Cloud Foundry 运行时。您将使用 Cloud Foundry 本机部署方法和多目标应用程序 (MTA) 部署方法。

行使选项

您可以通过两种方式执行此练习:

  1. 实时环境通过使用下面提供的说明,您可以在 SAP BTP 免费层级账户中执行步骤。

  2. 平台模拟 – 单击下面的"开始练习"按钮,按照模拟中的逐步说明进行操作。

注意

强烈建议您首先在实时环境中执行这些步骤。

前提条件

  • 您有权访问 SAP BTP Cloud Foundry 环境,并具有将应用程序部署到 Cloud Foundry 空间所需的权限。

  • 已安装以下工具:

  • git CLI

  • cds CLI

  • Cloud Foundry CLI

  • Cloud MTA 构建工具 (MBT)

练习开始练习(SAP 官方交互式练习)

步骤

  1. 克隆并打开示例应用程序。

  2. 从 GitHub 克隆示例应用程序。 合并 https://github.com/SAP-samples/cloud-foundry-runtime-learning-journey/pull/8

git clone https://github.com/SAP-samples/cloud-foundry-runtime-learning-journey
  1. 在首选 IDE 中打开克隆的项目。

  2. 使用本机 Cloud Foundry 部署来部署应用程序。

  3. 构建项目。 此参考应用程序已附带部署的所有必要文件。但是,您必须先为生产构建应用程序:

cds build --production

--production 参数可确保云部署相关的部件由 cds build 创建。 2. 登录 Cloud Foundry 实例并以组织和空间为目标。 使用以下命令登录到 Cloud Foundry 实例:

cf login

提供可在 SAP BTP 主控室中找到的 API 端点以及您的凭据。验证后,通过从列表中选择相应值来定位组织和空间。 或者,您还可以使用以下命令将组织和空间作为目标:

cf target -o <organization> -s <space>
  1. 将应用程序推送到 Cloud Foundry。 使用以下命令将应用程序部署到 Cloud Foundry

cf push

有关通过 cf-push 进行部署的详细信息,请参阅官方 CAP 文档。 4. 访问 应用程序。 在终端中,您将看到已部署应用程序的 URL。在浏览器中打开 URL 以访问应用程序。或者,您还可以导航到现部署在 SAP BTP 主控室的 Cloud Foundry 空间内的应用程序,并从此处访问应用程序。 5. 尝试应用程序后,可以使用以下命令(假设顺序很重要)删除应用程序和 xsuaa 服务实例:

  1. cf delete hello-cloud-foundry-srv

  2. cf delete-service hello-cloud-foundry-auth

  3. 使用多目标应用程序 (MTA) 部署来部署应用程序。MTA 使用插件扩展本机 vanilla CF 工作流,请参阅此链接以获取详细信息。

  4. 构建项目。 此参考应用程序已附带部署的所有必要文件。但是,您必须先为生产构建应用程序:

mbt build -t gen --mtar mta.tar

这将在 mta.tar 文件夹中创建 gen 文件。此文件包含 MTA 部署的部署部件。 2. 安装 CF 多应用插件。cf install-plugin multiapps 3. 部署应用程序。 使用以下命令将应用程序部署到 Cloud Foundry:

cf deploy gen/mta.tar

等待流程完成。您可以在终端中检查已部署应用程序的部署状态。部署完成后,您应该会看到此类内容以及可在浏览器中输入以访问应用程序的 URL:

[…] Application "hello-cloud-foundry-srv" started and available at "[org]-[space]-hello-cloud-foundry-srv.landscape-domain.com" […]
  1. 尝试应用程序后,可以使用以下命令将其删除,也可以删除 xsuaa 服务实例:cf undeploy hello-cloud-foundry