minikube für die lokale Entwicklung in Cloud Code for VS Code verwenden

Cloud Code installiert und verwaltet Minikube automatisch. Wenn Sie die Abhängigkeitsverwaltung deaktiviert haben, fügen Sie die Minikube-Binärdatei zu PATH hinzu.

Hinweise

  1. Installieren Sie Git, damit Cloud Code Git-Vorgänge ausführen kann, z. B. das Klonen eines Beispiels.
  2. Installieren Sie das Cloud Code-Plug-in, falls noch nicht geschehen.

Anwendung aus einer Vorlage erstellen

Cloud Code enthält eine Reihe von Vorlagen für Codebeispiele, die Ihnen den Einstieg erleichtern. So erstellen Sie eine Kubernetes-Anwendung mithilfe eines vorhandenen Beispiels:

  1. Öffnen Sie die Befehlspalette (drücken Sie Ctrl/Cmd + Shift + P oder klicken Sie auf Ansicht > Befehlspalette) und führen Sie dann Cloud Code: Neue Anwendung aus.
  2. Wählen Sie als Beispieltyp Kubernetes-Anwendung aus.
  3. Wählen Sie aus den verfügbaren Optionen ein Beispiel anhand der gewünschten Sprache aus: NodeJS, Go, Python, Java.
  4. Wählen Sie einen bevorzugten Speicherort für die Anwendung auf Ihrem lokalen Computer aus und klicken Sie auf Erstelle zum Speichern eine neue App.

    Cloud Code klont das ausgewählte Beispiel und öffnet das neue Projekt zur Verwendung.

Beispielstruktur der Anwendung

Alle Sprachbeispielanwendungen haben nahezu dieselbe Struktur. Es gibt zwar weitere unterstützte Strukturen, aber diese Struktur wird für den Anfang empfohlen.

Die Struktur der Node.js-Gästebuchanwendung sieht beispielsweise so aus:

.
|---- .vscode
|      ---- launch.json
|---- kubernetes-manifests
|     |---- guestbook-backend.deployment.yaml
|     |---- guestbook-backend.service.yaml
|     |---- guestbook-frontend.deployment.yaml
|     |---- guestbook-frontend.service.yaml
|     |---- mongo.deployment.yaml
|     ---- mongo.service.yaml
|---- src
|     |---- backend
|     |     |---- Dockerfile
|     |     |---- index.js
|     |     |---- app.js
|     |     ---- package.json
|     |---- frontend
|           |---- Dockerfile
|           |---- index.js
|     |     |---- app.js
|           ---- package.json
---- skaffold.yaml

Wenn Sie sich diese Node.js-Beispielanwendung für das Kubernetes-Gästebuch genauer ansehen, finden Sie hier einige Schlüsseldateien und ihre Verwendung:

  • .vscode
    • extensions.json: Aufforderung zum Herunterladen weiterer Erweiterungen beim Öffnen dieses Projekts
    • launch.json: Konfiguration (vom Typ cloudcode.kubernetes) starten, um die Kubernetes-Anwendung auszuführen oder Fehler zu beheben
    • tasks.json: Konfigurationsinformationen für Visual Studio Code-Aufgaben
  • kubernetes-manifests
    • guestbook-backend.deployment.yaml: Pod-Spezifikation für die Backend-Knoten
    • guestbook-frontend.deployment.yaml: Pod-Spezifikation für die Frontend-Knoten
    • mongo.deployment.yaml: Pod-Spezifikation für die Datenbank
  • src
    • (backend|frontend)/app.js: Node.js-Code mit der Webserverlogik
    • (backend|frontend)/Dockerfile: wird verwendet, um das Container-Image für unser Programm zu erstellen
  • skaffold.yaml: Konfigurationsdatei für Skaffold, mit der Cloud Code Kubernetes-Anwendungen erstellen, bereitstellen und debuggen kann

Eigene Anwendung verwenden

Eine Anleitung zur Verwendung eines vorhandenen Projekts finden Sie unter Cloud Code mit einer vorhandenen Kubernetes-Anwendung verwenden

Kubernetes-Kontext festlegen

Bevor Sie Ihre Anwendung ausführen, müssen Sie sie einrichten, um sie in Ihrem bevorzugten Kubernetes-Kontext bereitzustellen. Sie können dies in Ihrer Konfiguration angeben.

Konfiguration

Wenn Sie die Ausführungskonfiguration Cloud Code: Develop on Kubernetes verwenden, können Sie Ihr Deployment anpassen, indem Sie verfügbare Einstellungen konfigurieren.

Wenn Sie Konfigurationen hinzufügen oder bearbeiten möchten, klicken Sie auf Ausführen > Öffnen Sie „Konfigurationen“ und dann Konfigurationen bearbeiten oder hinzufügen.

Anwendung in einem Minikube-Cluster erstellen und bereitstellen

Minikube-Cluster starten

Cloud Code installiert und verwaltet Minikube automatisch. Wenn Sie die Abhängigkeitsverwaltung deaktiviert haben, fügen Sie die Minikube-Binärdatei zu PATH hinzu.

  1. Öffnen Sie die Befehlspalette (drücken Sie Ctrl/Cmd+Shift+P oder klicken Sie Ansehen > Befehlspalette) und Führen Sie dann den Befehl Cloud Code: Control minikube aus.
  2. Klicken Sie bei Minikube-Cluster (Profil) zur Steuerung auswählen auf minikube und dann auf Starten.

Auf Minikube ausführen

  1. Öffnen Sie die Befehlspalette und führen Sie Cloud Code: Auf Kubernetes ausführen aus.
  2. Klicken Sie auf Ja für Aktuellen Kontext (minikube) verwenden, um die App auszuführen?
  3. Cloud Code führt Ihre Anwendung in einem Minikube-Cluster aus. Wenn autorisieren Sie Cloud Shell dazu, mit Ihren Anmeldedaten eine Google Cloud API-Aufruf.

    Sehen Sie sich die Bereitstellungsdetails im Abschnitt Development Sessions der Cloud Code:

  4. Klicken Sie im Bereich Entwicklungssitzungen auf Portfoward-URLs, um die URLs aufzurufen, und dann auf den URL-Link, um den Browser mit Ihrer ausgeführten Anwendung zu öffnen.

Interaktives Terminal in einem Container öffnen

  1. Klicken Sie auf Cloud Code und maximieren Sie dann den Explorer von Entwicklungssitzungen.
  2. Maximieren Sie Bereitgestellte Ressourcen und dann Pods.
  3. Klicken Sie mit der rechten Maustaste auf einen Container und dann auf Get Terminal.

Minikube-Cluster pausieren oder anhalten

  1. Öffnen Sie die Befehlspalette (drücken Sie Ctrl/Cmd+Shift+P oder klicken Sie Ansehen > Befehlspalette) und führen Sie dann den Cloud Code: Befehl „minikube“ steuern
  2. Nachdem die Option Zur Steuerung ein Minikube-Cluster (Profil) auswählen angezeigt wird, klicken Sie auf minikube und dann auf Beenden oder Pausieren.

Cluster von einem anderen Cloud-Anbieter erstellen und hinzufügen

Wenn Sie einen lokalen Cluster oder einen Cluster eines anderen Anbieters verwenden, Azure oder AWS verwenden Sie die Tools des Anbieters, um den Cluster zu erstellen und zu Ihrem KubeConfig.

Mit anderen lokalen Clustern zusammenarbeiten

Zusätzlich zu minikube Cloud Code, wenn Sie Docker Desktop (für Mac oder Windows)

Damit Cloud Code mit einem lokalen Cluster funktioniert, muss Ihre Standardkonfiguration (z. B. ~/.kube/config) Ihren lokalen Cluster enthalten. Dieser Cluster muss als aktueller Kontext festgelegt werden.

Wenn Sie beispielsweise den lokalen Cluster docker-for-desktop mit Docker Desktop verwenden, legen Sie Ihren bevorzugten Cluster mit dem folgenden Befehl fest:

kubectl config use-context docker-for-desktop

Nächste Schritte

Support anfragen

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