Buildpacks von Google Cloud

Die Buildpacks von Google Cloud sind Teil eines Open-Source-Projekts, das Anwendungsquellcode in produktionsfertige Container-Images transformiert. Die von Google Cloud veröffentlichten Buildpacks implementieren die Cloud Native Buildpack-Spezifikation und sollen Ihnen beim Erstellen und Konfigurieren von Containern helfen, die Sie dann in Google Cloud bereitstellen können.

Ein Buildpack ist normalerweise für eine Sprachkomponente, Toolchain oder Anwendungskomponente verantwortlich. wie Python, pip oder einen Webserver. Buildpacks werden in Sammlungen zusammengefasst, die als Builder bezeichnet werden und Projekt-Quellcode analysieren, einen Build-Plan erstellen und ein bereitstellbares Container-Image generieren können.

Containerisierung mit Buildpacks

Wenn Sie Ihre Anwendung (Dienst) oder Funktion in Google Cloud Serverless-Produkten bereitstellen, wird Ihr Code mithilfe von Buildpacks in einen ausführbaren Container verpackt. In Cloud Run haben Sie die Möglichkeit, einen vordefinierten Container bereitzustellen oder Ihren Quellcode bereitzustellen, damit Cloud Run den Container-Build verwalten kann. In Cloud Functions und App Engine ist der Containerisierungsprozess vollständig verwaltet. Das bedeutet, dass beim Bereitstellen Ihres Quellcodes die gesamte Container-Image-Paketerstellung und -Konvertierung für Sie erledigt wird.

Jedes Container-Image wird mit allen zur Ausführung Ihres Deployments erforderlichen Komponenten erstellt, einschließlich Quellcode, System- und Bibliotheksabhängigkeiten, Konfigurationsdaten und statischen Assets. Standardmäßig verwenden die serverlosen Google Cloud-Produkte dieselben zugrunde liegenden Dienste, darunter Cloud Build für die Bereitstellungspipeline sowie Container Registry oder Artifact Registry für die Speicherung und Verwaltung von Container-Images.

Bei Verwendung der Buildpacks von Google Cloud:

  • Builder und Buildpacks sind für die Ausführung des Build-Prozesses vorkonfiguriert und erstellen ein ausführbares Container-Image.
  • Buildpacks unterstützen mehrere Programmiersprachen und erkennen automatisch, welche Sprache in Ihrem Quellcode verwendet wird.
  • Sie können Buildpacks anpassen und erweitern, um zusätzliche Systemabhängigkeiten zu installieren. Allerdings kann der Standard-Builder die allgemeinen für Ihre Programmiersprache erforderlichen Aufgaben verarbeiten, einschließlich der Installation von Abhängigkeiten aus dem Paket-Repository der Sprache und der Verwendung der gemeinsamen Abhängigkeitsdatei der Sprache.

Code mit Buildpacks containerisieren

Buildpacks können lokal oder remote für folgende Zwecke verwendet werden:

Für Programmiersprachen, die eine Standardmethode zum Starten einer Anwendung ausschließen, können Sie mit einem Procfile den Prozess definieren, der beim Start eines Containers aufgerufen wird. Mit Procfile kann der Standardstartprozess für beliebige Buildpacks-Typen überschrieben werden. Für einige, einschließlich Python, ist dieser jedoch obligatorisch.

Nächste Schritte