Zum Hauptinhalt springen

Buildpack-Stacks

Ein Buildpack-Stack definiert die Menge an Buildpacks, die zum Bauen Ihrer Applikation verwendet werden. Deploio unterstützt zwei Stacks: heroku (Standard) und paketo.

Heroku-Stack (Standard)

Der Heroku-Stack ist der Standard und verwendet ausschliesslich unveränderte Heroku Cloud Native Buildpacks. Dies gewährleistet strikte Kompatibilität mit dem Standard-Heroku-CNB-Verhalten und bietet häufig aktualisierte Runtime-Versionen.

Paketo-Stack

Der Paketo-Stack verwendet eine Kombination aus Paketo-Buildpacks, nine-verwalteten Buildpacks und Heroku Cloud Native Buildpacks für einige Sprachen. Dieser Stack beinhaltet eigene Buildpacks, die eine automatische Spracherkennung ermöglichen – auch für statische Seiten.

Statische Seiten auf dem Heroku-Stack

Die automatische Spracherkennung für statische Seiten ist auf dem Heroku-Stack nicht verfügbar, da diese Erkennung durch einen nine-verwalteten Buildpack bereitgestellt wird. Beim Deployen einer statischen Seite mit dem Heroku-Stack via nctl muss die Sprache explizit angegeben werden:

nctl create application my-static-site \
--buildpack-stack=heroku \
--language=static \
--git-url=https://github.com/your-org/your-repo

Stack-Auswahl

Der Heroku-Stack ist für die meisten Applikationen eine gute Wahl. Ein Wechsel zum Paketo-Stack kann sinnvoll sein, wenn:

  • Sie die automatische Spracherkennung für statische Seiten benötigen, die durch einen nine-verwalteten Buildpack bereitgestellt wird, der im Heroku-Stack nicht verfügbar ist.
  • Sie spezifische Funktionen von Paketo-Buildpacks benötigen.

Konfiguration des Buildpack-Stacks

Verwenden Sie das Flag --buildpack-stack beim Erstellen oder Aktualisieren einer Applikation:

# Applikation mit dem Paketo-Stack erstellen
nctl create application my-app \
--buildpack-stack=paketo \
--git-url=https://github.com/your-org/your-repo

# Bestehende Applikation auf den Paketo-Stack wechseln
nctl update application my-app --buildpack-stack=paketo

# Zurück zum Standard-Heroku-Stack wechseln
nctl update application my-app --buildpack-stack=heroku