In Firebase bereitstellen

Auf dieser Seite wird erläutert, wie Sie mit Cloud Build Anwendungen in Firebase bereitstellen. Wenn Sie Cloud Build noch nicht kennen, lesen Sie zuerst die Kurzanleitungen sowie die Übersicht über die Build-Konfiguration.

Hinweis

  • Aktivieren Sie die Cloud Build, Firebase und Resource Manager APIs.

    Rollen, die zum Aktivieren von APIs erforderlich sind

    Zum Aktivieren von APIs benötigen Sie die IAM-Rolle „Service Usage-Administrator“ (roles/serviceusage.serviceUsageAdmin), die die Berechtigung serviceusage.services.enable enthält. Informationen zum Zuweisen von Rollen.

    APIs aktivieren

Erforderliche IAM-Berechtigungen

  1. Rufen Sie in der Google Cloud Console die Cloud Build Berechtigungen Seite auf:

    Zur Seite Berechtigungen

  2. Wählen Sie das Dienstkonto für Ihren Build aus.

  3. Setzen Sie den Status der folgenden Rollen auf Aktiviert:

    • Cloud Build-Dienstkonto | Ermöglicht dem Legacy-Cloud Build-Dienstkonto, Builds zu aktualisieren, Build-Logs zu schreiben und Build-Artefakte zu speichern.
    • Firebase-Administrator | Ermöglicht Cloud Build den Zugriff auf Firebase.
    • API-Schlüssel-Betrachter | Ermöglicht Cloud Build den Zugriff auf die aktuelle Firebase Hosting-Konfiguration während der Build-Bereitstellung.

Das firebase-Docker-Image verwenden

Cloud Build bietet ein Builder-Image, mit dem Sie firebase-Befehle in Cloud Build aufrufen können. Wenn Sie diesen Builder in einer Cloud Build-Konfigurationsdatei verwenden möchten, können Sie den firebase-Build-Schritt verwenden, um in Firebase bereitzustellen:

  1. Erstellen Sie eine Build-Konfigurationsdatei mit dem Namen cloudbuild.yaml oder cloudbuild.json wobei PROJECT_ID Ihre Google Cloud Projekt-ID und FIREBASE_PROJECT_ID Ihre Firebase-Projekt-ID ist:

    YAML

    steps:
    - name: "us-docker.pkg.dev/firebase-cli/us/firebase"
       args: ['deploy', '--project=FIREBASE_PROJECT_ID', '--only=hosting']
    ## Or, target a specific version of firebase-tools
    - name: "us-docker.pkg.dev/firebase-cli/us/firebase":x.y.z
       args: ['deploy', '--project=FIREBASE_PROJECT_ID', '--only=hosting']
    

    JSON

    {
      "steps": [
       {
          "name": "us-docker.pkg.dev/firebase-cli/us/firebase",
          "args": [
             "deploy",
             "--project",
             "FIREBASE_PROJECT_ID",
             "--only",
             "hosting"
           ]
      }
      ]
    }
    

    Sie können eine bestimmte Version von firebase-tools auswählen, indem Sie
    name: "us-docker.pkg.dev/firebase-cli/us/firebase":x.y.z verwenden.

  2. Starten Sie mit der Build-Konfigurationsdatei den Build:

    gcloud builds submit --region=REGION --config CONFIG_FILE_PATH SOURCE_DIRECTORY
    

    Wobei:

    • REGION eine der unterstützten Build-Regionen ist.
    • CONFIG_FILE_PATH der Pfad zur Build-Konfigurationsdatei ist.
    • SOURCE_DIRECTORY ist der Pfad oder die URL zum Quellcode.

Kontinuierliche Bereitstellung

Sie können die Bereitstellung Ihrer Software in Firebase automatisieren, indem Sie Cloud Build-Trigger erstellen. Sie können die Trigger so konfigurieren, dass Images erstellt und bereitgestellt werden, wenn Sie Ihren Quellcode aktualisieren.

So automatisieren Sie die Bereitstellung in Firebase:

  1. Fügen Sie in Ihrem Repository eine Build-Konfigurationsdatei mit Schritten zum Aufrufen des firebase deploy Befehls hinzu, wobei PROJECT_ID Ihre Google Cloud Projekt-ID ist:

    YAML

    steps:
          - name: us-docker.pkg.dev/firebase-cli/us/firebase
            args: ['deploy', '--project=PROJECT_ID', '--only=hosting']
    

    JSON

    {
      "steps": [
       {
          "name": "us-docker.pkg.dev/firebase-cli/us/firebase",
          "args": [
             "deploy",
             "--project",
             "PROJECT_ID",
             "--only",
             "hosting"
           ]
      }
      ]
    }
    
  2. Erstellen Sie einen Trigger mit der im vorherigen Schritt erstellten Build-Konfigurationsdatei:

    1. Öffnen Sie in der Google Cloud Console die Seite Trigger:

      Zur Seite "Trigger"

    2. Wählen Sie oben auf der Seite im Drop-down-Menü zur Projektauswahl Ihr Projekt aus.

    3. Klicken Sie auf Öffnen.

    4. Klicken Sie auf Trigger erstellen.

      Auf der Seite Erstellen Sie einen Trigger geben Sie die folgenden Einstellungen ein:

      1. Geben Sie einen Namen für den Trigger ein.

      2. Wählen Sie das Repository-Ereignis aus, das den Trigger aufrufen soll.

      3. Wählen Sie das Repository aus, das Ihren Quellcode und die Build-Konfigurationsdatei enthält.

      4. Geben Sie den regulären Ausdruck für den Zweig- oder Tag-Namen an, mit dem der Trigger gestartet wird.

      5. Konfiguration: Wählen Sie die Build-Konfigurationsdatei aus, die Sie zuvor erstellt haben.

    5. Klicken Sie auf Erstellen, um den Build-Trigger zu speichern.

Jedes Mal, wenn Sie neuen Code an Ihr Repository übertragen, wird automatisch ein Build gestartet und in Firebase bereitgestellt.

Weitere Informationen zum Erstellen von Cloud Build-Triggern finden Sie unter Build-Trigger erstellen und verwalten.

Codebeispiel

Ein Codebeispiel für die Bereitstellung in Firebase mit Cloud Build finden Sie unter deploy-firebase-example.

Nächste Schritte