Cloud Run-Dienst lokal entwickeln

Bevor Sie einen Dienst in Cloud Run bereitstellen, können Sie ihn lokal mit einem Cloud Run-Emulator entwickeln.

Dienst für die Entwicklung konfigurieren

Wenn Sie keine .vscode/launch.json-Datei definiert haben, können Sie im Dialogfeld Run/Debug on Cloud Run Emulator die Konfiguration konfigurieren und die Einstellungen in .vscode/launch.json speichern. Wenn du eine .vscode/launch.json-Datei konfiguriert hast, kannst du sie direkt bearbeiten.

Wenn Sie den Dienst lokal ausführen möchten, geben Sie die Konfiguration an:

  1. Öffnen Sie die Befehlspalette (drücken Sie Ctrl/Cmd+Shift+P) und führen Sie dann den Befehl Auf Cloud Run-Emulator ausführen aus.
  2. Legen Sie im Dialogfeld „Run/Debug on Cloud Run Emulator“ die Spezifikationen für Ihre Konfiguration fest:

    • Nur lokal installierte Build-Tools sind für den Cloud Run Emulator verfügbar
    • Wählen Sie Docker oder Buildpacks als Builder aus und geben Sie dann die Quelle an.
    • Optional: Wenn Sie Umgebungsvariablen angeben möchten, die an die ausgeführten Container übergeben werden sollen, maximieren Sie die Erweiterte Build-Einstellungen und klicken Sie dann, um Schlüssel/Wert-Paare anzugeben.
      Name Beschreibung Beispiel
      PORT Der Port, der vom HTTP-Server überwacht werden soll. 8080
      K_SERVICE Der Name des ausgeführten Cloud Run-Dienstes. Hello-World
      K_ÜBERARBEITUNG Der Name der ausgeführten Cloud Run-Überarbeitung. hallo-welt.1
      K_KONFIGURATION Der Name der Cloud Run-Konfiguration, die die Überarbeitung erstellt hat. Hello-World
    • Optional: Wenn Sie Cloud SQL-Verbindungen angeben möchten, maximieren Sie Erweiterte Diensteinstellungen, klicken Sie auf Verbindungen und geben Sie dann eine Cloud SQL-Verbindung pro Zeile an.
    • Optional: Klicken Sie auf die Option Den Dienst von anderen Geräten im lokalen Netzwerk aus zugänglich machen.
    • (Optional) Wenn Sie den Dienst nur manuell neu erstellen und ausführen möchten und nicht automatisch, wenn Sie eine Änderung vornehmen, entfernen Sie das Häkchen bei der Option Automatisch neu erstellen und noch einmal ausführen.

Dienst lokal ausführen

  1. Nachdem Sie Ihre bevorzugten Einstellungen festgelegt haben, führen Sie den Dienst aus, indem Sie auf Ausführen klicken.
  2. Überwachen Sie den Status der Bereitstellung im Ausgabefenster.

    Nach Abschluss der Bereitstellung können Sie den ausgeführten Dienst anzeigen, indem Sie die im Ausgabefenster angezeigte URL öffnen.

  3. Wenn Sie ausführliche Logs aufrufen möchten, wechseln Sie im Ausgabefenster zur detaillierten Cloud Run-Ansicht.

    Ausgabebereich mit „hello-world-5 - Detailliert“ aus dem Drop-down-Menü des Ausgabekanals

  4. Nach Abschluss Ihrer Sitzung können Sie die folgenden Kontextmenübefehle verwenden:

    • Bereitstellungslogs öffnen:Öffnen Sie mit dem Cloud Code-Log-Explorer die Anwendungslogs einer bestimmten Bereitstellung
    • Dienst-URL öffnen: Öffnen Sie die Anwendungsdienst-URL eines bestimmten Dienstes in einem Webbrowser.
  5. Wenn Sie den Watch-Modus in Ihrer Startkonfiguration deaktiviert haben und Änderungen an Ihrer Anwendung vornehmen und die Anwendung neu erstellen und neu bereitstellen möchten, pausieren Sie die Ausführungsaktion und klicken Sie auf Symbol: Neu erstellen und neu bereitstellen Anwendung neu erstellen und noch einmal bereitstellen.

  6. Klicken Sie in der Aktionsleiste Ihrer aktuellen Bereitstellung auf die Schaltfläche Beenden, um die Bereitstellung zu beenden.

    Aktionsleiste für die Cloud Run-Bereitstellung

Secrets speichern

Wenn dein Code potenziell vertrauliche Daten wie API-Schlüssel, Passwörter und Zertifikate enthält, kannst du sie als Secrets speichern, um sie zu schützen. Mit der Cloud Code Secret Manager-Integration können Sie diese Secrets sicher speichern und programmatisch abrufen. Ausführliche Informationen zum Erstellen und Verwalten von Secrets mit Cloud Code finden Sie im Secret Manager-Leitfaden.

Vorhandene Konfiguration von "launch.json" anpassen

Das Cloud Code-Plug-in aktualisiert die Konfigurationsdatei launch.json automatisch, wenn Sie eine Ausführungsaktion auswählen. Wenn Sie die Ausführung Ihres Dienstes weiter anpassen möchten, können Sie in der Datei .vscode/launch.json folgende Felder angeben:

  • watch: Gibt Änderungen im Arbeitsbereich an und führt den Dienst noch einmal aus. Standardmäßig "true".

    Im folgenden Beispiel wird für die Smartwatch der Wert true festgelegt:

    "watch": true,
    
  • build: Geben Sie den Builder (Docker, Jib Maven, jibGradle oder buildpacks) an, mit dem Sie Ihre Images erstellen möchten.

    Das folgende Beispiel zeigt einen Docker-Builder:

    "build": {
      "docker": {
        "path": "Dockerfile"
      }
    },
    

    Das folgende Beispiel zeigt einen Buildpack-Builder:

    "build": {
      "buildpacks": {
        "path": "src/requirements.txt",
        "builder": "gcr.io/buildpacks/builder:v1"
      }
    },
    
  • image: Geben Sie den Namen des Images an, das verwendet werden soll.

    Das folgende Beispiel zeigt, wie ein Image-Name angegeben wird:

      "image": "hello-world",
    
  • service: Geben Sie den zu verwendenden Cloud Run-Dienst an.

    Im folgenden Beispiel wird gezeigt, wie Sie einen Dienstnamen, einen Port und Ressourcenlimits angeben:

    "service": {
      "name": "hello-world",
      "containerPort": 8080,
      "resources": {
        "limits": {
          "memory": "256Mi"
        }
      }
    },
    
  • debug: Geben Sie Einstellungen für die Fehlerbehebung an, z. B. die Zuordnung des Remote-Pfads, um einen lokalen Pfad einem Pfad im Remote-Container zuzuordnen.

    Das folgende Beispiel zeigt einen Abschnitt zur Fehlerbehebung, in dem die Quelldateien angegeben werden:

    "debug": {
      "sourceFileMap": {
        "${workspaceFolder}": "/app"
      }
    }
    

Support

Wenn Sie Feedback senden möchten, können Sie Probleme auf GitHub melden oder eine Frage in Stack Overflow stellen.