Wenn Sie bereits ein Projekt mit Kubernetes-Manifesten, einem Dockerfile oder Jib zum Erstellen Ihrer Images konfiguriert haben, können Sie es öffnen und mit dem Plug-in verwenden. Sie müssen dafür nur noch zusätzlich eine Skaffold-YAML-Datei konfigurieren. Diese kann automatisch für Sie generiert werden oder Sie erstellen diese aus der mitgelieferten Vorlage.
Wenn Sie mit der Konfiguration der Skaffold-YAML-Datei fertig sind, geben Sie an, wo wie Ihre Container-Images in die das Projekt-Image übertragen werden soll.
Automatisches Projekt-Bootstrapping
Ihr Projekt muss mindestens ein Kubernetes-Manifest haben. Wenn Cloud Code beliebige Kubernetes-Manifeste im Projekt erkennt, versucht Cloud Code, zu bootstrappen.
Wenn Cloud Code keine vorhandene Skaffold-Konfiguration erkennt, werden Sie aufgefordert, diese einzurichten:
Vorbereitung
Ihr Projekt muss die folgenden Voraussetzungen erfüllen, um zur Erstellung einer skaffold.yaml
-Datei aufgefordert zu werden und die erforderlichen Konfigurationen auszuführen:
(Option 1) Ihr Projekt hat ein Dockerfile und ist für Jib konfiguriert oder
(Option 2) Ihr Projekt kann mit Buildpacks erstellt werden und enthält Kubernetes-Ressourcen.
Kubernetes-Ausführungskonfiguration einrichten
Wenn die Voraussetzungen erfüllt sind, wird Cloud Code
Sie aufgefordert werden, eine skaffold.yaml
-Datei zu erstellen (falls keine
bereits vorhanden) und alle erforderlichen Ausführungskonfigurationen:
Klicken Sie auf die Benachrichtigung. Dadurch wird Ihre Konfiguration nach Möglichkeit automatisch erstellt.
Wenn eine automatische Skaffold-Konfiguration nicht möglich ist, weil mehrere Images oder Builder erkannt wurden, wird von Cloud Code ein Dialogfeld angezeigt, in dem Sie aufgefordert werden, Zuordnungen zwischen den erkannten Images und Buildern anzugeben.
Alternativ können Sie eine Skaffold-Konfiguration einrichten. Rufen Sie dazu Folgendes auf: Tools >Grafik: Cloud Code >Kubernetes undKubernetes-Support hinzufügen auswählen.
Diese Option analysiert die Kubernetes-Ressourcen Ihres Projekts und generiert eine Datei
skaffold.yaml
, falls noch keine vorhanden ist, sowie erforderliche Ausführungskonfigurationen. Die beiden generierten Ausführungskonfigurationen enthalten eine Konfiguration, um Ihr Projekt auf Kubernetes auszuführen, und eine für die Entwicklung in einem Kubernetes-Cluster.Nachdem die Unterstützung hinzugefügt wurde, können Sie Ihr Projekt in Kubernetes mithilfe der neu hinzugefügten Ausführungskonfigurationen ausführen und Fehler beheben.
Cloud Code-Skaffold-Konfiguration manuell erstellen
Sie können manuell eine neue skaffold.yaml
-Datei erstellen oder eine vorhandene hinzufügen
zu Ihrem Projekt hinzufügen.
So erstellen Sie eine skaffold.yaml
-Datei manuell mit Live-Vorlagen
Schritte:
Erstellen Sie im Stammverzeichnis Ihres Projekts eine neue Datei mit dem Namen
skaffold.yaml
. Klicken Sie dazu mit der rechten Maustaste und wählen Sie Neu > Datei aus.Drücken Sie
Ctrl+Space
in der neuen Datei mit dem Cursor, um die Vorschläge für die Live-Vorlage aufzurufen, und wählen Sie die gewünschte Skaffold-Vorlage aus.Füllen Sie das Image-Feld mit dem Namen des Projekt-Images und dem Feld "Manifest" mit einer Liste der Kubernetes-Ressourcen, die Sie aus der IDE bereitstellen möchten.
Nachdem Cloud Code festgestellt hat, dass Ihre Datei
skaffold.yaml
gültig ist, klicken Sie auf die Eingabeaufforderung, um Kubernetes-Ausführungskonfigurationen zu erstellen.
Beispiele für Skaffold-Konfigurationen für Cloud Code
Dockerfile-basierte Builds:
build: artifacts: - image: image_name deploy: kubectl: manifests: - k8s/web.yaml - k8s/backend.yaml
Erstellen Sie einen Abschnitt für Java Maven/Gradle-Projekte mit dem Jib-Plug-in (der Abschnitt "deploy" bleibt wie im obigen Beispiel):
build: artifacts: - image: image_name jib: {}
Wenn Sie Build-, Test- und Deployment-Konfigurationen für verschiedene Kontexte definieren möchten, können Sie unterschiedliche Profile haben. Hier ist ein Beispiel für ein Cloud Build-Profil, um Cloud Code zum Erstellen von Images mit Cloud Build zu konfigurieren:
profiles: # use the cloudbuild profile to build images using Google Cloud Build - name: cloudbuild build: googleCloudBuild: {}
Wenn Sie Ihr Projekt mit Helm bereitstellen möchten, finden Sie entsprechende Informationen in der Helm-Dokumentation.
Speicherort der Container-Images angeben
Container-Image-Speicher
Bevor Sie Ihre Anwendung bereitstellen, müssen Sie ein Standard-Image-Repository definieren, das mit Ihrem Projekt verwendet werden soll.
Standardmäßig ist das Projekt so konfiguriert, dass es den in Ihren Kubernetes-Manifesten angegebenen Image-Namen verwendet. Sie können diese Image-Spezifikation auch anpassen. Einmal Sie haben Ihr bevorzugtes Repository eingerichtet. (Artifact Registry, Container Registry, DockerHub, privates Repository usw.), bearbeiten die Ausführungskonfigurationen und geben es als Standard-Image-Repository während der Ausführung an Konfigurationseinstellungen. Bei Google Container Registry-Images ist im Feld automatische Vervollständigung verfügbar, damit Sie Ihr Container Registry-Repository schneller finden.
Sie können oben über das Dialogfeld „Konfigurationen ausführen/Fehler beheben“ darauf zugreifen in der Taskleiste unter Edit Configurations > Auf Kubernetes entwickeln > Image-Repository.
Weitere Informationen zur Festlegung der Einstellungen für Container-Images finden Sie im Leitfaden Einstellungen für Container-Image-Einstellungen konfigurieren.
Build-Einstellungen
Nachdem Sie das Container-Image festgelegt haben, können Sie dessen Build-Einstellungen konfigurieren. Cloud Code unterstützt die Artefakttypen Docker, Jib und Buildpacks.
Auf der Build / Deploy Tab der Ausführungskonfigurationseinstellungen (Konfigurationen bearbeiten > Auf Kubernetes entwickeln), können Sie die Build-Einstellungen für Ihr Standardprofil konfigurieren.
Weitere Informationen zur Angabe der Build-Einstellungen für Ihr Image finden Sie im Leitfaden zur Konfiguration von Container-Image-Builds.
Nächste Schritte
- Verwenden Sie Dateisynchronisierung und Hot Refresh um die Entwicklung zu beschleunigen.
- Fehler in Ihrer Anwendung in Cloud Code beheben