Kontinuierlich aus einem Repository bereitstellen

Wenn Sie Quellcode oder Funktionen in einem Git-Repository haben und Builds automatisieren und kontinuierliche Bereitstellungen aus einem Repository einrichten möchten, können Sie entweder Cloud Build oder Developer Connect in der Cloud Run Console verwenden.

Wenn Sie dies einrichten, verwendet Cloud Run einen Cloud Build-Trigger, um Ihren Code automatisch zu erstellen und bereitzustellen, wenn neue Commits an einen bestimmten Branch eines Git-Repositorys übertragen werden. Die Informationen zum Quell-Repository werden in der Google Cloud Console für Ihren Dienst nach der Bereitstellung in Cloud Run angezeigt.

In der Cloud Run Console:

Alternativ können Sie Cloud Deploy verwenden, um eine CD-Pipeline (Continuous Delivery) zum Bereitstellen von Cloud Run-Diensten in mehreren Umgebungen einzurichten.

Hinweise

  • Sie haben entweder ein Git-Repository mit einem Dockerfile oder Ihre Codebasis wurde in einer der Sprachen geschrieben, die von den Buildpacks von Google Cloud unterstützt werden.
  • Enable the Cloud Build API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  • Wenn Sie die Option „Developer Connect“ (Vorschau) auswählen, aktivieren Sie die Developer Connect API:

    API aktivieren

Erforderliche Rollen

Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für Ihr Projekt zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Bereitstellen von Cloud Run-Diensten aus Git mit Cloud Build oder Developer Connect benötigen:

Das Dienstkonto, mit dem der Build ausgeführt wird, muss die folgenden Rollen haben:

Eine Liste der IAM-Rollen und -Berechtigungen im Zusammenhang mit Cloud Run finden Sie unter IAM-Rollen für Cloud Run und IAM-Berechtigungen für Cloud Run. Wenn Ihr Cloud Run-Dienst mitGoogle Cloud -APIs wie Cloud-Clientbibliotheken verknüpft ist, lesen Sie die Konfigurationsanleitung für Dienstidentitäten. Weitere Informationen zum Zuweisen von Rollen finden Sie unter Bereitstellungsberechtigungen und Zugriff verwalten.

Kontinuierliche Bereitstellung über die Cloud Run-Konsole einrichten

Die Einrichtung variiert geringfügig je nachdem, ob Sie die kontinuierliche Bereitstellung für einen neuen Dienst oder einen vorhandenen Dienst einrichten. Klicken Sie auf den entsprechenden Tab, um weitere Informationen zu erhalten.

Neuer Dienst

  1. Rufen Sie in der Google Cloud Console die Seite „Cloud Run“ auf:

    Zu Cloud Run

  2. Wenn Sie einen neuen Dienst erstellen, klicken Sie auf Repository verbinden, um das Formular Dienst erstellen aufzurufen.

    Wenn Sie einen vorhandenen Dienst ändern, suchen Sie ihn in der Liste der Dienste und klicken Sie darauf. Klicken Sie auf Mit Repository verbinden.

  3. Wählen Sie Cloud Build oder Developer Connect aus.

    1. Wenn Sie Cloud Build ausgewählt haben, lesen Sie den Abschnitt Mit Cloud Build einrichten.

    2. Wenn Sie Developer Connect ausgewählt haben, lesen Sie den Abschnitt Mit Developer Connect einrichten.

Vorhandener Dienst

  1. Rufen Sie in der Google Cloud Console die Seite „Cloud Run“ auf:

    Zu Cloud Run

  2. Suchen Sie den Dienst in der Liste der Dienste und klicken Sie darauf.

  3. Klicken Sie auf Mit Repository verbinden und folgen Sie der Anleitung unter Mit Cloud Build einrichten.

Mit Cloud Build einrichten

Im Bereich Mit Cloud Build einrichten:

  1. Wählen Sie ein Repository aus der Liste aus. Das Laden der Liste der Repositories dauert einige Momente. Folgen Sie der Anleitung und klicken Sie auf Weiter.

    GitHub ist der Standard-Repository-Anbieter. Klicken Sie auf Authentifizieren, wenn Sie noch nicht authentifiziert sind, und folgen Sie der Anleitung. Das Verbinden eines Repositorys erfolgt über die Cloud Build GitHub-App.

    Wenn Sie Ihr Repository nicht finden, klicken Sie auf den Link Verbundene Repositories verwalten. Folgen Sie der Anleitung, um Cloud Build Zugriff auf Ihr Repository zu gewähren.

  2. Füllen Sie im Schritt Build-Konfiguration die Optionen aus:

    • Branch

      • Gibt an, welche Quelle beim Ausführen des Triggers verwendet werden soll. Sie können den regex hier einfügen. Übereinstimmende Branches werden automatisch verifiziert und unter der Eingabe angezeigt. Stimmt genau ein Branch überein, wird der Trigger nach der Erstellung automatisch ausgeführt.
    • Build-Typ

      • Dockerfile: Wählen Sie diese Option aus, wenn Ihr Repository mithilfe von Docker erstellt werden soll und ein Dockerfile enthält.

        • Geben Sie unter Quellort den Speicherort und den Namen des Dockerfile an. Dieses Verzeichnis wird als Docker-Build-Kontext verwendet. Alle Pfade sollten sich auf das aktuelle Verzeichnis beziehen.
      • Go, Node.js, Python, Java, .NET Core, Ruby oder PHP über Buildpacks von Google Cloud: Wenn Ihr Repository mit Buildpacks erstellt werden soll, wählen Sie diese Option aus.

        • Geben Sie das Verzeichnis unter Build-Kontextverzeichnis an.
        • Geben Sie unter Einstiegspunkt (optional) den Befehl zum Starten des Servers an. Beispiel: gunicorn -p :8080 main:app für Python und java -jar target/myjar.jar für Java. Wenn Sie das Feld leer lassen, gilt das Standardverhalten.
        • Geben Sie unter Funktionsziel (nur für Funktionsbereitstellungen) die aufzurufende Funktion ein. Lassen Sie das Feld andernfalls leer.
  3. Klicken Sie auf Speichern.

  4. Die Seite wird neu geladen und Sie kehren zum Formular Dienst erstellen zurück.

  5. Prüfen Sie die ausgewählten Einstellungen im Bereich Quell-Repository.

  6. Füllen Sie den Rest des Formulars unter Konfigurieren aus.

  7. Klicken Sie auf Erstellen.

    Sie werden zur Seite Dienstdetails weitergeleitet, auf der Sie den Fortschritt der Einrichtung des Build- und Bereitstellungsprozesses aus dem Repository verfolgen können.

Nachdem alle Schritte abgeschlossen sind, können Sie Folgendes tun:

  • Klicken Sie in der Cloud Run-Konsole auf Repository-Einstellungen bearbeiten, um den Cloud Build-Trigger in der Cloud Build-Konsole zu bearbeiten.
  • Klicken Sie im Schritt Erstellung und Bereitstellung aus Repository auf den Link Logs, um den Build-Verlauf aufzurufen.
  • Details zur Quelle im Bereich Überarbeitungsdetails

Kontinuierliche Bereitstellung manuell einrichten

Unter Kontinuierliche Bereitstellung manuell einrichten finden Sie weitere Informationen, falls Sie ein manuelles Verfahren und nicht die Benutzeroberfläche verwenden müssen.

Vorhandenen Cloud Build-Trigger an den Cloud Run-Dienst anhängen

Wenn bereits ein Cloud Build-Trigger vorhanden ist, können Sie ihn an den Dienst anhängen, indem Sie Ihrem Cloud Run-Dienst ein Label hinzufügen.

So fügen Sie ein Label in der Cloud Run Console hinzu:

  1. Rufen Sie in der Google Cloud Console die Seite „Cloud Run“ auf:

    Zu Cloud Run

  2. Wählen Sie Ihren Dienst aus.

  3. Klicken Sie für den ausgewählten Dienst oben auf der Seite auf Labels, um den Bereich Labels zu öffnen.

  4. Fügen Sie ein Label mit gcb-trigger-id als Schlüssel und der eindeutigen Kennzeichnung des Cloud Build-Triggers als Wert (nicht dem Triggernamen) hinzu. Wenn der Schlüssel gcb-trigger-id bereits vorhanden ist, ändern Sie den Wert. Informationen zum Einrichten des Labels finden Sie unter Labels festlegen oder ändern.

Mit Developer Connect einrichten

Im Bereich Mit Developer Connect einrichten:

  1. Wählen Sie ein Repository aus und klicken Sie auf Weiter.

    Wenn das gewünschte Repository nicht angezeigt wird, klicken Sie auf Neues Repository verknüpfen, um den Bereich Neue Repositories über Developer Connect verknüpfen zu öffnen. Klicken Sie auf den entsprechenden Tab, um weitere Informationen zum Herstellen einer Verbindung zu einem der Quellcode-Management-Anbieter zu erhalten.

    GitHub

    Klicken Sie bei den Optionen GitHub, GitHub Enterprise Cloud und GitHub Enterprise auf Verbinden.

    Wenn Sie kein Dialogfeld sehen, deaktivieren Sie alle Browser-Plug-ins, die Pop-ups blockieren, und prüfen Sie, ob Pop-ups in Ihren Browsereinstellungen zugelassen sind. Folgen Sie in Chrome beispielsweise der Anleitung zum Zulassen von Pop-ups.

    Gewähren Sie Berechtigungen für Ihr GitHub-Konto und verknüpfen Sie es mit Repositories, indem Sie der folgenden Anleitung folgen. Die Aufforderungen, die in Ihrem Webbrowser angezeigt werden, hängen davon ab, ob die Cloud Run GitHub App bereits im GitHub-Konto installiert ist.

    Führen Sie im Dialogfeld „Cloud Run“ die folgenden Schritte aus:

    Wenn Sie eine Liste von GitHub-Konten sehen, installieren Sie die App und verknüpfen Sie die Repositorys so:

    1. Wählen Sie das GitHub-Konto aus, das Sie verwenden möchten.

    2. Wählen Sie ein oder mehrere Repositorys aus, auf die Sie Zugriff gewähren möchten.

    Wenn Sie aufgefordert werden, eine vorhandene App-Installation wiederzuverwenden, wählen Sie aus, wo die App konfiguriert werden soll, indem Sie diese Schritte ausführen:

    1. Klicken Sie auf GitHub-Konto, um Konten mit installierter Google Cloud Run-App aufzurufen. Wenn das gewünschte Konto angezeigt wird, wählen Sie es aus, indem Sie auf Bestätigen klicken.

    2. Wenn das gewünschte Konto nicht angezeigt wird, gehen Sie so vor:

      1. Wählen Sie GitHub-Anwendung in anderem GitHub-Konto installieren aus und klicken Sie auf Bestätigen.

      2. Folgen Sie der Anleitung von GitHub, um die Installation der App zuzulassen.

      3. Wählen Sie ein oder mehrere Repositorys aus, auf die Sie Zugriff gewähren möchten.

    Wenn das Dialogfeld geschlossen wird, ist die App-Installation abgeschlossen.

    GitLab

    Für die Option GitLab:

    1. Geben Sie im Abschnitt Persönliche Zugriffstokens die Tokens für Ihr Konto ein:

      • API-Zugriffstoken: Geben Sie das persönliche Zugriffstoken mit dem Bereich api ein.
      • API-Zugriffstoken mit Leseberechtigung: Geben Sie das persönliche Zugriffstoken mit dem Bereich read_api ein.

      Sie sind dafür verantwortlich, dass Ihre GitLab-Tokens gültig bleiben. GitLab-Tokens haben eine maximale Lebensdauer von 365 Tagen, sofern der Token-Ersteller oder ein Administrator nichts anderes angibt. Informationen zum Verwalten von Einstellungen und Benachrichtigungen zum Ablauf von Tokens finden Sie in der GitLab-Dokumentation zu persönlichen Zugriffstokens.

      Weitere Informationen finden Sie in der GitLab-Dokumentation zum Ablauf persönlicher Zugriffstokens.

    2. Klicken Sie auf Mehr anzeigen, um optionale Konfigurationseinstellungen aufzurufen.

    3. Optional: Wählen Sie im Abschnitt Verschlüsselung einen CMEK-Schlüssel aus, um Secret Manager-Secrets zu verschlüsseln, die von Cloud Run erstellt werden.

    GitLab Enterprise Edition

    Für die Option GitLab Enterprise Edition:

    1. Geben Sie unter Host-URL die URL des Hosts ein, mit dem Sie eine Verbindung herstellen möchten.

    2. Geben Sie im Abschnitt Persönliche Zugriffstokens die Tokens für Ihr Konto ein:

      • API-Zugriffstoken: Geben Sie das persönliche Zugriffstoken mit dem Bereich api ein.
      • API-Zugriffstoken mit Leseberechtigung: Geben Sie das persönliche Zugriffstoken mit dem Bereich read_api ein.

      Sie sind dafür verantwortlich, dass Ihre GitLab-Tokens gültig bleiben. GitLab-Tokens haben eine maximale Lebensdauer von 365 Tagen, sofern der Token-Ersteller oder ein Administrator nichts anderes angibt. Informationen zum Verwalten von Einstellungen und Benachrichtigungen zum Ablauf von Tokens finden Sie in der GitLab-Dokumentation zu persönlichen Zugriffstokens.

      Weitere Informationen finden Sie in der GitLab-Dokumentation zum Ablauf persönlicher Zugriffstokens.

    3. Klicken Sie auf Mehr anzeigen, um optionale Konfigurationseinstellungen aufzurufen.

    4. Optional: Wählen Sie im Abschnitt Verschlüsselung einen CMEK-Schlüssel aus, um Secret Manager-Secrets zu verschlüsseln, die von Cloud Run erstellt werden.

    Bitbucket

    Für die Option Bitbucket Cloud:

    1. Geben Sie bei Workspace (Arbeitsbereich) Ihre Bitbucket Cloud-Arbeitsbereichs-ID ein.

    2. Geben Sie im Bereich Zugriffstokens Ihre Bitbucket-Zugriffstokens ein:

    3. Klicken Sie auf Mehr anzeigen, um optionale Konfigurationseinstellungen aufzurufen.

    4. Optional: Wählen Sie im Abschnitt Verschlüsselung einen CMEK-Schlüssel aus, um Secret Manager-Secrets zu verschlüsseln, die von Cloud Run erstellt werden.

    Bitbucket-Rechenzentrum

    Für die Option Bitbucket Data Center:

    1. Geben Sie unter Host-URL die URL für den Bitbucket Data Center-Host ein, mit dem Sie eine Verbindung herstellen möchten.

    2. Geben Sie im Bereich Access Tokens (Zugriffstokens) Ihre Bitbucket Cloud-Zugriffstokens ein:

      • Administratorzugriffstoken: Geben Sie das Token mit dem Bereich „Repository-Administrator“ ein.

      • Lesezugriffstoken: Geben Sie das Token mit dem Bereich „repository read“ ein.

    3. Klicken Sie auf Mehr anzeigen, um optionale Konfigurationseinstellungen aufzurufen.

    4. Optional: Wählen Sie im Abschnitt Verschlüsselung einen CMEK-Schlüssel aus, um Secret Manager-Secrets zu verschlüsseln, die von Cloud Run erstellt werden.
  2. Klicken Sie auf Verbinden. Das kann einige Sekunden dauern.

  3. Füllen Sie im Schritt Build-Konfiguration die Optionen aus:

    • Branch

      • Gibt an, welche Quelle beim Ausführen des Triggers verwendet werden soll. Sie können den regex hier einfügen. Übereinstimmende Branches werden automatisch verifiziert und unter der Eingabe angezeigt. Stimmt genau ein Branch überein, wird der Trigger nach der Erstellung automatisch ausgeführt.
    • Build-Typ

      • Dockerfile: Wählen Sie diese Option aus, wenn Ihr Repository mithilfe von Docker erstellt werden soll und ein Dockerfile enthält.

        • Geben Sie unter Quellort den Speicherort und den Namen des Dockerfile an. Dieses Verzeichnis wird als Docker-Build-Kontext verwendet. Alle Pfade sollten sich auf das aktuelle Verzeichnis beziehen.
      • Go, Node.js, Python, Java, .NET Core, Ruby oder PHP über Buildpacks von Google Cloud: Wenn Ihr Repository mit Buildpacks erstellt werden soll, wählen Sie diese Option aus.

        • Geben Sie das Verzeichnis unter Build-Kontextverzeichnis an.
        • Geben Sie unter Einstiegspunkt (optional) den Befehl zum Starten des Servers an. Beispiel: gunicorn -p :8080 main:app für Python und java -jar target/myjar.jar für Java. Wenn Sie das Feld leer lassen, gilt das Standardverhalten.
        • Geben Sie unter Funktionsziel (nur für Funktionsbereitstellungen) die aufzurufende Funktion ein. Lassen Sie das Feld andernfalls leer.
  4. Klicken Sie auf Speichern.

  5. Füllen Sie den Rest des Formulars unter Konfigurieren aus.

  6. Wenn Sie die Konfiguration Ihres Dienstes abgeschlossen haben, klicken Sie auf Erstellen, um das Image in Cloud Run bereitzustellen. Warten Sie, bis das Deployment abgeschlossen ist.

  7. Klicken Sie auf den angezeigten URL-Link, um den nur einmal vorkommenden und stabilen Endpunkt des bereitgestellten Dienstes zu öffnen.