Implantar o Spring Music

Estas instruções ajudarão você a implantar o aplicativo de referência do Cloud Foundry Spring Music com o Kf, demonstrando algumas coisas ao longo do caminho:

  1. Criação de aplicativos Java a partir da origem: a origem do Spring Music será criada no cluster, não localmente.

  2. Integração com o agente de serviços: você criará e vinculará um banco de dados do PostgreSQL ao aplicativo Spring Music.

  3. Conectores do Spring Cloud: os Conectores do Spring Cloud são usados pelo aplicativo Spring Music para detectar itens como serviços CF vinculados. Eles funcionam perfeitamente com o Kf.

  4. Configuração da versão do Java: especifique a versão do Java que você quer que o buildpack use.

Pré-requisitos

Opção 1: Minibroker

O administrador do cluster precisa seguir estas instruções para instalar o agente de serviços do Minibroker no seu cluster. O Minibroker permitirá que você provisione um banco de dados PostgreSQL e configure seu aplicativo para usá-lo.

Para confirmar que o Minibroker está instalado e disponível para o cluster, execute kf marketplace. A saída será semelhante a:

$ 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

Opção 2: outro agente de serviços

Você pode usar um agente de serviços diferente instalado, desde que seja compatível com a criação de serviços do PostgreSQL. Por exemplo, o gcp-service-broker.

Implantar

Clonar fonte

  1. Clone o repositório do Spring Music.

    git clone https://github.com/cloudfoundry-samples/spring-music.git spring-music
    cd spring-music
  2. Edite manifest.yml e substitua o conteúdo pelo seguinte:

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

Aplicativo de push

  1. Implante (pressupondo que você já tenha kf target um espaço). Consulte estes documentos para mais detalhes):

    kf push spring-music
    
  2. Use o recurso de proxy para acessar o aplicativo implantado e carregue http://localhost:8080 no navegador:

    kf proxy spring-music
    

    O aplicativo implantado inclui um elemento de IU que mostra qual perfil Spring (se houver) está sendo usado. Nenhum perfil está sendo usado aqui, indicando que um banco de dados na memória está em uso.

Criar e vincular banco de dados

  1. Crie um serviço do PostgreSQL por meio do agente instalado no marketplace:

    kf create-service postgresql 11-7-0 spring-music-db -c '{"postgresqlDatabase":"smdb", "postgresDatabase":"smdb"}'
    
  2. Vincule a instância de serviço ao aplicativo Spring Music:

    kf bind-service spring-music spring-music-db -c '{"postgresqlDatabase":"smdb", "postgresDatabase":"smdb"}'
    
  3. Reinicie o aplicativo para disponibilizar a vinculação de serviço por meio da variável de ambiente VCAP_SERVICES:

    kf restart spring-music
    
  4. (Opcional) Veja os detalhes da vinculação:

    kf bindings
    
  5. kf proxy para o aplicativo novamente e visualize-o no navegador da Web. O perfil do Spring deve ser exibido, indicando que o serviço PostgreSQL que você criou e vinculou está sendo usado:

Destruir

  1. Desvincule e exclua o serviço PostgreSQL:

    kf unbind-service spring-music spring-music-db
    kf delete-service spring-music-db
    
  2. Excluir o aplicativo?

    kf delete spring-music