部署 Spring Music

以下说明将引导您使用 Kf Cloud Service Broker for Google Cloud 部署 Cloud Foundry Spring Music 参考应用。

  1. 从来源构建 Java 应用:Spring Music 来源将在集群上构建,而不是在本地构建。

  2. Service Broker 集成:您将使用 Kf Cloud Service Broker 创建数据库,并将 Spring Music 应用绑定到该数据库。

  3. Spring Cloud 连接器Spring Cloud 连接器由 Spring Music 应用用于检测绑定 CF 服务等内容。它们可与 Kf 无缝合作。

  4. 配置 Java 版本:您将指定要 buildpack 使用的 Java 版本。

前提条件

安装和配置 Kf Cloud Service Broker

部署 Spring Music

克隆源代码

  1. 克隆 Spring Music 代码库

    git clone https://github.com/cloudfoundry-samples/spring-music.git spring-music
    cd spring-music
  2. 修改 manifest.yml,并将 path: build/libs/spring-music-1.0.jar 替换为 stack: org.cloudfoundry.stacks.cflinuxfs3。这会指示 Kf 使用云原生 buildpack 从源代码构建,因此您无需在本地编译。

    ---
    applications:
    - name: spring-music
      memory: 1G
      random-route: true
      stack: org.cloudfoundry.stacks.cflinuxfs3
      env:
        JBP_CONFIG_SPRING_AUTO_RECONFIGURATION: '{enabled: false}'
    #    JBP_CONFIG_OPEN_JDK_JRE: '{ jre: { version: 11.+ } }'

推送没有绑定的 Spring Music

  1. 创建并定位空间。

    kf create-space test
    kf target -s test
  2. 部署 Spring Music。

    kf push spring-music
  3. 使用代理功能访问部署的应用。

    1. 启动代理:

      kf proxy spring-music
    2. 在浏览器中打开 http://localhost:8080

    部署的应用包含一个界面元素,其中显示正在使用的 Spring 配置文件(如有)。此处未使用任何配置文件,表明正在使用内存中数据库。

创建和绑定数据库

  1. 从市场创建 PostgresSQL 数据库。

     kf create-service csb-google-postgres small spring-music-postgres-db -c '{"region":"COMPUTE_REGION","authorized_network":"VPC_NAME"}'
  2. 将服务与应用绑定。

     kf bind-service spring-music spring-music-postgres-db
  3. 重启应用以通过 VCAP_SERVICES 环境变量提供服务绑定。

     kf restart spring-music
  4. (可选)查看绑定详细信息。

     kf bindings
  5. 验证应用使用了新绑定。

    1. 启动代理:

      kf proxy spring-music
    2. 在浏览器中打开 http://localhost:8080

      现在,您可以看到正在使用 Postgres 配置文件,并且可以看到与应用绑定的服务的名称。

清理

  1. 取消绑定并删除 PostgreSQL 服务:

    kf unbind-service spring-music spring-music-db
    kf delete-service spring-music-db
  2. 删除应用:

    kf delete spring-music