Vorhandene Anwendung in Cloud Code for IntelliJ verwenden

Wenn bereits ein Projekt mit Kubernetes-Manifesten, einem Dockerfile oder Jib zum Erstellen Ihrer Images konfiguriert ist, können Sie es öffnen und mit dem Plug-in verwenden. Die einzige erforderliche zusätzliche Konfiguration ist eine Skaffold-YAML-Datei, die entweder automatisch für Sie generiert oder mit der bereitgestellten Vorlage erstellt wird.

Nachdem Sie die Konfiguration der Skaffold-YAML-Datei abgeschlossen haben, müssen Sie angeben, wo Ihre Container-Images gespeichert werden, wo das Projekt-Image per Push ü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, damit Sie aufgefordert werden, eine skaffold.yaml-Datei zu erstellen und alle 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, fordert Cloud Code Sie auf, eine skaffold.yaml-Datei (falls noch keine vorhanden ist) und alle erforderlichen Ausführungskonfigurationen zu erstellen:

Benachrichtigung mit einem Link zum Erstellen Ihrer Cloud Code-Ausführungskonfigurationen für Kubernetes

  1. 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.

    Build-Einstellungen festlegen, die in Ihrer Skaffold-Konfiguration verwendet werden sollen

    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 skaffold.yaml-Datei (falls noch keine vorhanden ist) sowie die erforderlichen 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.

  2. 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 Ihrem Projekt eine vorhandene Datei hinzufügen.

So erstellen Sie eine skaffold.yaml-Datei manuell mit Live-Vorlagen:

  1. 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.

  2. 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.

    Skaffold-YAML-Vorlage verwenden

  3. 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.

  4. Nachdem Cloud Code festgestellt hat, dass Ihre skaffold.yaml-Datei gültig ist, klicken Sie auf die Eingabeaufforderung, um Kubernetes-Ausführungskonfigurationen zu erstellen.

    Benachrichtigung für Kubernetes-Ausführungsziele 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. Nachdem Sie Ihr bevorzugtes Repository eingerichtet haben (Artifact Registry, Container Registry, DockerHub, privates Repository usw.), bearbeiten Sie die Ausführungskonfigurationen und geben es in den Einstellungen für die Ausführungskonfiguration als Standard-Image-Repository an. Bei Google Container Registry-Images ist im Feld automatische Vervollständigung verfügbar, damit Sie Ihr Container Registry-Repository schneller finden.

Auf diese kann in der oberen Taskleiste im Dialogfeld „Run/Debug Configurations“ unter Edit Configurations > Develop on Kubernetes > Image Repository zugegriffen werden.

Standard-Image-Repository in der Ausführungskonfiguration, das mit dem Format "gcr.io/" festgelegt wird und die Optionen zur automatischen Vervollständigung basierend auf dem aktuellen Projekt und dem aktiven Cluster enthält

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.

Build-Einstellungen auf dem Tab "Build/Deploy"

Weitere Informationen zur Angabe der Build-Einstellungen für Ihr Image finden Sie im Leitfaden zur Konfiguration von Container-Image-Builds.

Nächste Schritte

Support kontaktieren

So senden Sie Feedback oder melden ein Problem in Ihrer IntelliJ-IDE: Tools > Cloud Code > Hilfe / Info > Feedback geben oder Problem melden, um ein Problem auf GitHub zu melden oder stellen Sie eine Frage zu Stack Overflow.