Zum Inhalt springen

Manifest-Dateien verwenden

Zuletzt aktualisiert am

In der folgenden Dokumentation erfahren Sie, wie Sie Ihre Anwendung mit einer Manifest-Datei pushen und aktualisieren.

Damit Ihre Anwendungskonfiguration in STACKIT Cloud Foundry reproduzierbar ist, verwalten Sie diese am besten als Code. Das erreichen Sie mit einer Manifest-Datei, also einer YAML-Datei, die Ihre Anwendung und bei Bedarf zusätzliche Datendienste beschreibt.

Erstellen Sie eine manifest.yml für Ihre Anwendung und speichern Sie diese im Root-Verzeichnis Ihres Anwendungscodes. Wenn Sie Ihre Anwendung über die Cloud Foundry CLI pushen, sucht die CLI automatisch nach einer manifest.yml und verwendet diese Konfiguration, um Ihre Anwendung in STACKIT Cloud Foundry einzurichten. Sie können Werte aus der manifest.yml auch überschreiben, indem Sie diese direkt als Argumente im Befehl cf push angeben.

Eine manifest.yml sieht typischerweise so aus:

manifest.yml
---
applications:
- name: spring-music
memory: 1G
random-route: true
path: build/libs/spring-music-1.0.jar
env:
JBP_CONFIG_SPRING_AUTO_RECONFIGURATION: '{enabled: false}'
SPRING_PROFILES_ACTIVE: http2
# JBP_CONFIG_OPEN_JDK_JRE: '{ jre: { version: 11.+ } }'

Dieses Beispiel definiert eine Anwendung mit den folgenden Argumenten:

  • name: Name der Anwendung (wird als Kennung verwendet).
  • memory: Speicherlimit der App.
  • random-route: Fügt der Route einen zufälligen String hinzu, um Konflikte zu vermeiden.
  • path: Speicherort des App-Artefakts, das bereitgestellt werden soll.
  • env: Für die App zu setzende Umgebungsvariablen.

Sie können je nach Anwendungsfall weitere Optionen hinzufügen.

Sie können in Ihrer manifest.yml auch Variablen verwenden, um die Konfiguration flexibler zu gestalten. Zum Beispiel können Sie Ihre Anwendung so definieren:

manifest.yml
---
applications:
- name: test-app
instances: ((instances))
memory: ((memory))
buildpacks:
- go_buildpack
env:
GOPACKAGENAME: go_calls_ruby
command: go_calls_ruby

In diesem Manifest sind die Werte für instances und memory nicht fest codiert, sondern als Variablen referenziert. Diese Werte stellen Sie in einer separaten Datei vars.yml bereit:

vars.yml
instances: 2
memory: 1G

Damit Cloud Foundry diese Variablen beim Deploy ersetzt, müssen Sie Ihre Datei vars.yml explizit mit der Option --vars-file referenzieren:

Terminal-Fenster
cf push --vars-file /PATH/vars.yml

Dieser Befehl weist Cloud Foundry an, Ihr Manifest zu verwenden und die Variablenwerte aus der angegebenen Datei vars.yml einzusetzen.

Sie sollten cf push aus dem Verzeichnis ausführen, das Ihre manifest.yml enthält, oder den Pfad mit der Option -f angeben, falls sie sich an einem anderen Ort befindet:

Terminal-Fenster
cf push -f /PATH/manifest.yml --vars-file /PATH/vars.yml

Die Datei manifest.yml unterstützt deutlich mehr Optionen und erweiterte Funktionen als hier dargestellt. Um alle verfügbaren Attribute zu erkunden und die Möglichkeiten von Manifesten vollständig zu nutzen, lesen Sie die App Manifest Attribute Reference in der offiziellen Cloud Foundry Dokumentation.