Google Clouds Buildpacks überführt Anwendungsquellcode ohne eigenes Dockerfile in produktionsreife Container-Images.
Was ist Buildpacks?
Google Clouds Buildpacks ist ein Open-Source-Projekt, das Anwendungsquellcode in produktionsreife Container-Images umwandelt. Die von Google Cloud veröffentlichten Buildpacks implementieren die Cloud Native Buildpack Specification und sind darauf ausgelegt, Container zu erstellen und zu konfigurieren, die sich auf Google Cloud bereitstellen lassen.
Ein Buildpack ist typischerweise für eine Sprachkomponente, eine Toolchain oder eine App-Komponente zuständig, etwa Python, pip oder einen Webserver. Mehrere Buildpacks werden zu Buildern gebündelt, die Quellcode analysieren, einen Build-Plan erstellen und ein deploybares Container-Image erzeugen.
Kernfunktionen
- Vorkonfigurierte Builder: Builder und Buildpacks sind so vorkonfiguriert, dass sie den Build-Prozess übernehmen und ein lauffähiges Container-Image erzeugen
- Automatische Spracherkennung: Buildpacks unterstützen mehrere Programmiersprachen und erkennen automatisch, welche im Quellcode verwendet wird
- Anpassbarkeit: Buildpacks lassen sich anpassen und erweitern, um zusätzliche Systemabhängigkeiten zu installieren
- Abhängigkeitsverwaltung: Der Standard-Builder installiert Abhängigkeiten aus dem Paket-Repository der jeweiligen Sprache und nutzt deren übliche Abhängigkeitsdatei
- Procfile: Definition oder Überschreibung des Startprozesses eines Containers
Typische Anwendungsfälle
Serverless-Deployments ohne Dockerfile
Beim Deployment auf die Serverless-Produkte von Google Cloud wird der Code mit Buildpacks in einen lauffähigen Container verpackt. Bei Cloud Run functions und App Engine ist der Vorgang vollständig verwaltet.
Quellcode-Deployment auf Cloud Run
Auf Cloud Run können Sie entweder ein vorgefertigtes Container-Image bereitstellen oder Quellcode deployen und den Container-Build von Cloud Run verwalten lassen.
Lokale und Remote-Builds
Buildpacks lassen sich lokal oder remote verwenden, um eine Anwendung beziehungsweise einen Service oder eine Function zu bauen.
Vorteile
- Kein eigenes Dockerfile nötig: Der Container-Build wird von vorkonfigurierten Buildern übernommen
- Vollständige Images: Jedes Container-Image enthält alle für den Betrieb nötigen Komponenten, darunter Quellcode, System- und Bibliotheksabhängigkeiten, Konfigurationsdaten und statische Assets
- Offener Standard: Implementierung der Cloud Native Buildpack Specification
- Erweiterbar: Zusätzliche Systemabhängigkeiten lassen sich ergänzen, wenn der Standard-Builder nicht ausreicht
Integration mit innFactory
Als zertifizierter Google Cloud Partner unterstützt innFactory Sie bei Buildpacks: Auswahl und Anpassung der Builder, Einbindung in Ihre CI/CD-Pipelines und Migration bestehender Dockerfile-Builds.
Typische Anwendungsfälle
Technische Spezifikationen
Häufig gestellte Fragen
Was sind Google Clouds Buildpacks?
Google Clouds Buildpacks ist laut Dokumentation ein Open-Source-Projekt, das Anwendungsquellcode entgegennimmt und in produktionsreife Container-Images überführt. Die von Google Cloud veröffentlichten Buildpacks implementieren die Cloud Native Buildpack Specification und sind darauf ausgelegt, Container zu erstellen und zu konfigurieren, die sich auf Google Cloud bereitstellen lassen.
Was ist der Unterschied zwischen einem Buildpack und einem Builder?
Ein Buildpack ist typischerweise für eine Sprachkomponente, eine Toolchain oder eine App-Komponente zuständig, etwa Python, pip oder einen Webserver. Buildpacks werden zu Sammlungen namens Builder zusammengefasst, die den Quellcode eines Projekts analysieren, einen Build-Plan erstellen und ein deploybares Container-Image erzeugen.
Wo kommen Buildpacks in Google Cloud zum Einsatz?
Beim Deployment und Betrieb von Anwendungen, Services oder Functions auf den Serverless-Produkten von Google Cloud wird der Code mithilfe von Buildpacks in einen lauffähigen Container verpackt. Auf Cloud Run können Sie wahlweise einen vorgefertigten Container bereitstellen oder Quellcode deployen und den Build von Cloud Run verwalten lassen. Bei Cloud Run functions und App Engine ist der Containerisierungsprozess vollständig verwaltet.
Welche Dienste nutzen die Serverless-Produkte im Hintergrund?
Standardmäßig nutzen die Serverless-Produkte von Google Cloud laut Dokumentation dieselben zugrunde liegenden Dienste, darunter Cloud Build für die Deployment-Pipeline sowie Container Registry oder Artifact Registry für Speicherung und Verwaltung der Container-Images.
Wozu dient ein Procfile?
Für Programmiersprachen ohne standardisierten Weg, eine Anwendung zu starten, definiert ein Procfile den Prozess, der beim Start eines Containers aufgerufen wird. Ein Procfile kann den Standard-Startprozess für jeden Buildpacks-Typ überschreiben und ist für einige Typen, darunter Python, verpflichtend.
Hinweis: Alle Produktinformationen auf dieser Seite wurden sorgfältig zusammengestellt, sind jedoch ohne Gewähr und können veraltet oder unvollständig sein. Cloud-Services entwickeln sich schnell weiter — Funktionen, Preise, SLAs und Verfügbarkeit ändern sich laufend. Verbindliche und aktuelle Informationen finden Sie ausschließlich auf der offiziellen Produktseite von Google Cloud (offizielle Dokumentation). Diese Seite stellt kein Angebot von Google Cloud dar.
