部署 Spring Music

本操作說明會引導您使用 Kf 部署 Cloud Foundry Spring Music 參考應用程式,並在過程中示範幾項操作:

  1. 從原始碼建構 Java 應用程式:Spring Music 原始碼會在叢集上建構,而非在本機上建構。

  2. 服務仲介整合:您將建立 PostgreSQL 資料庫並繫結至 Spring Music 應用程式。

  3. Spring Cloud 連接器:Spring Music 應用程式會使用 Spring Cloud 連接器來偵測已繫結的 CF 服務等項目。並可與 Kf 完美搭配運作。

  4. 設定 Java 版本:您將指定要讓 Buildpack 使用的 Java 版本。

事前準備

選項 1:Minibroker

叢集管理員應按照這些操作說明,將 Minibroker 服務代理程式安裝到叢集中。Minibroker 可讓您佈建 PostgreSQL 資料庫,並設定應用程式使用該資料庫。

如要確認 Minibroker 已安裝且可供叢集使用,請執行 kf marketplace,您應該會看到類似以下的輸出內容:

$ kf marketplace
5 services can be used in Space "demo", use the --service flag to list the plans for a service

Broker      Name        Space      Status  Description
minibroker  mariadb                Active  Helm Chart for mariadb
minibroker  mongodb                Active  Helm Chart for mongodb
minibroker  mysql                  Active  Helm Chart for mysql
minibroker  postgresql             Active  Helm Chart for postgresql
minibroker  redis                  Active  Helm Chart for redis

方法 2:其他服務代理程式

只要安裝的服務仲介支援建立 PostgreSQL 服務,您就可以使用其他服務仲介。例如 gcp-service-broker

部署

複製原始碼

  1. 複製 Spring Music 存放區

    git clone https://github.com/cloudfoundry-samples/spring-music.git spring-music
    cd spring-music
  2. 編輯 manifest.yml,並將內容替換為以下內容:

    ---
    applications:
    - name: spring-music
      memory: 1G
      random-route: true
      stack: org.cloudfoundry.stacks.cflinuxfs3
      env:
        BP_AUTO_RECONFIGURATION_ENABLED: false
    

Push 應用程式

  1. 部署 (假設您已kf target一個空間,詳情請參閱這些文件):

    kf push spring-music
    
  2. 使用 Proxy 功能存取已部署的應用程式,然後在瀏覽器中載入 http://localhost:8080

    kf proxy spring-music
    

    已部署的應用程式包含 UI 元素,顯示正在使用的 Spring 設定檔 (如有)。這裡沒有使用任何設定檔,表示系統正在使用記憶體內資料庫。

建立及繫結資料庫

  1. 透過市集中安裝的仲介建立 PostgreSQL 服務:

    kf create-service postgresql 11-7-0 spring-music-db -c '{"postgresqlDatabase":"smdb", "postgresDatabase":"smdb"}'
    
  2. 將服務執行個體繫結至 Spring Music 應用程式:

    kf bind-service spring-music spring-music-db -c '{"postgresqlDatabase":"smdb", "postgresDatabase":"smdb"}'
    
  3. 重新啟動應用程式,透過 VCAP_SERVICES 環境變數提供服務繫結:

    kf restart spring-music
    
  4. (選用) 查看繫結詳細資料:

    kf bindings
    
  5. kf proxy 到應用程式,然後在網路瀏覽器中查看應用程式。系統應會顯示 Spring 設定檔,指出您建立並繫結的 PostgreSQL 服務正在使用中:

刪除

  1. 解除繫結並刪除 PostgreSQL 服務:

    kf unbind-service spring-music spring-music-db
    kf delete-service spring-music-db
    
  2. 刪除應用程式:

    kf delete spring-music