Diese Anleitung führt Sie durch die Bereitstellung der Referenzanwendung Cloud Foundry Spring mit Kf unter der Erläuterung verschiedener Punkte:
Java-Anwendungen aus der Quelle erstellen: Die Spring Music-Quelle wird auf dem Cluster erstellt, nicht lokal.
Service Broker-Integration: Sie erstellen und binden eine PostgreSQL-Datenbank an die Spring Music-Anwendung.
Spring Cloud Connectors: Spring Cloud Connectors werden von der Spring Music Anwendung verwendet, um Dinge wie gebundene CF-Dienste zu erkennen. Sie sind funktionieren nahtlos mit Kf.
Java-Version konfigurieren: Sie geben die Version von Java an, die vom Buildpack verwendet werden soll.
Vorbereitung
Option 1: Minibroker
Der Clusteradministrator muss dieser Anleitung ausführen, um den Service für den Minibroker in Ihrem Cluster zu installieren. Mit Minibroker können Sie eine PostgreSQL-Datenbank bereitstellen und Ihre Anwendung für die Verwendung konfigurieren.
Wenn Sie prüfen möchten, ob Minibroker installiert und für den Cluster verfügbar ist, führen Sie kf
marketplace
aus. Die Ausgabe sollte in etwa so aussehen:
$ 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
Option 2: Andere Service Broker
Sie können einen anderen Service Broker verwenden, der die Erstellung von PostgreSQL-Diensten unterstützt. Zum Beispiel gcp-service-broker.
Bereitstellen
Quellcode klonen
Klonen Sie das Spring Music-Repository.
git clone https://github.com/cloudfoundry-samples/spring-music.git spring-music cd spring-music
Bearbeiten Sie
manifest.yml
und ersetzen Sie den Inhalt durch Folgendes:--- applications: - name: spring-music memory: 1G random-route: true stack: org.cloudfoundry.stacks.cflinuxfs3 env: BP_AUTO_RECONFIGURATION_ENABLED: false
Push Anwendung
Bereitstellen (vorausgesetzt, Sie haben bereits einen Bereich
kf target
bearbeitet; weitere Informationen finden Sie in diesen Dokumenten):kf push spring-music
Verwenden Sie die Proxyfunktion, um auf die bereitgestellte Anwendung zuzugreifen. Laden Sie dann
http://localhost:8080
in Ihrem Browser:kf proxy spring-music
Die bereitgestellte Anwendung enthält ein UI-Element, das angibt, welches (falls vorhanden) Springprofil verwendet wird. Hier wird kein Profil verwendet, was darauf hinweist, dass eine In-Memory-Datenbank verwendet wird.
Datenbank erstellen und binden
Erstellen Sie einen PostgreSQL-Dienst über den im Marketplace installierten Broker:
kf create-service postgresql 11-7-0 spring-music-db -c '{"postgresqlDatabase":"smdb", "postgresDatabase":"smdb"}'
Binden Sie die Dienstinstanz an die Spring Music Anwendung:
kf bind-service spring-music spring-music-db -c '{"postgresqlDatabase":"smdb", "postgresDatabase":"smdb"}'
Starten Sie die Anwendung neu, um die Dienstbindung über die Umgebungsvariable
VCAP_SERVICES
verfügbar zu machen:kf restart spring-music
(Optional) Sehen Sie sich die Details der Bindung an:
kf bindings
kf proxy
zur App hinzu und öffnen Sie sie im Webbrowser. Es sollte das Spring-Profil angezeigt werden, das angibt, dass der von Ihnen erstellte und gebundene PostgreSQL-Dienst verwendet wird:
Löschen
Erstellen Sie die Bindung und löschen Sie den PostgreSQL-Dienst:
kf unbind-service spring-music spring-music-db kf delete-service spring-music-db
Löschen Sie die Anwendung:
kf delete spring-music