Utilizzare un'applicazione esistente in Cloud Code for IntelliJ

Se hai un progetto esistente già configurato con manifest Kubernetes, un Dockerfile o Jib per creare le tue immagini, puoi aprirlo e utilizzarlo con il plug-in. L'unica configurazione aggiuntiva necessaria è un file YAML Skaffold che può essere generato automaticamente o creato utilizzando il modello fornito.

Dopo aver configurato il file YAML di Skaffold, assicurati di specificare dove sono archiviate le immagini container in cui verrà eseguito il push dell'immagine del progetto.

Bootstrapping automatico del progetto

Il tuo progetto deve avere uno o più manifest Kubernetes. Se Cloud Code rileva qualsiasi manifest Kubernetes nel progetto, Cloud Code tenterà di eseguire il bootstrap.

Se Cloud Code non rileva una configurazione Skaffold esistente, ti verrà chiesto di configurarla.

Prerequisiti

Il progetto deve soddisfare i seguenti prerequisiti per poter creare un file skaffold.yaml ed eseguire le configurazioni necessarie:

  • (Opzione 1) Il tuo progetto ha un Dockerfile ed è configurato per Jib oppure

  • (Opzione 2) Il tuo progetto è compilabile utilizzando Buildpack e dispone di risorse Kubernetes.

Configura la configurazione di esecuzione di Kubernetes

Se i prerequisiti sono soddisfatti, Cloud Code ti mostrerà una notifica per creare un file skaffold.yaml (se non esiste già) e tutte le configurazioni di esecuzione necessarie:

Notifica con un link per creare le configurazioni di esecuzione di Cloud Code Kubernetes

  1. Fai clic sulla notifica. In questo modo, la configurazione viene creata automaticamente, se possibile.

    Se la creazione automatica della configurazione di Skaffold non è possibile a causa del rilevamento di più immagini o builder, Cloud Code visualizzerà una finestra di dialogo che ti chiede di fornire i mapping tra le immagini e i builder rilevati.

    Specifica le impostazioni di build da utilizzare nella configurazione di Skaffold

    In alternativa, puoi configurare Skaffold anche andando su Strumenti > Cloud Code > Kubernetes e selezionando Aggiungi supporto Kubernetes.

    Questa opzione analizza le risorse Kubernetes del progetto e genera un file skaffold.yaml (se non esiste già) e le configurazioni di esecuzione necessarie. Le due configurazioni di esecuzione generate includono una per eseguire il progetto su Kubernetes e una per lo sviluppo su un cluster Kubernetes.

  2. Una volta aggiunto il supporto, puoi iniziare a eseguire il debug del progetto su Kubernetes utilizzando le configurazioni di esecuzione appena aggiunte.

Creare manualmente una configurazione Skaffold di Cloud Code

Puoi scegliere di creare manualmente un nuovo file skaffold.yaml o aggiungerne uno esistente al tuo progetto.

Per creare manualmente un file skaffold.yaml utilizzando i modelli live, segui questi passaggi:

  1. Crea un nuovo file denominato skaffold.yaml nella directory principale del progetto (fai clic con il tasto destro del mouse > Nuovo > File).

  2. Con il cursore nel nuovo file, premi Ctrl+Space per visualizzare i suggerimenti per i modelli live, quindi scegli il modello Skaffold che preferisci.

    Utilizzo del modello YAML di Skaffold

  3. Compila il campo dell'immagine con il nome dell'immagine del progetto e il campo dei manifest con un elenco delle risorse Kubernetes che vuoi eseguire il deployment dall'IDE.

  4. Dopo che Cloud Code ha stabilito che il file skaffold.yaml è valido, fai clic sul prompt per creare configurazioni di esecuzione di Kubernetes.

    Crea una notifica della destinazione di esecuzione di Kubernetes

Esempi di configurazioni Skaffold di Cloud Code

  • Build basate su Dockerfile:

    build:
      artifacts:
        - image: image_name
    deploy:
      kubectl:
        manifests:
          - k8s/web.yaml
          - k8s/backend.yaml
    
  • Sezione di compilazione per i progetti Java Maven/Gradle con il plug-in Jib (la sezione di deployment rimane invariata rispetto all'esempio precedente):

    build:
    artifacts:
    - image: image_name
      jib: {}
    
  • Se vuoi definire configurazioni di build, test e deployment per contesti diversi, puoi avere profili diversi. Ecco un esempio di profilo Cloud Build per configurare Cloud Code in modo da creare immagini con Cloud Build:

    profiles:
    # use the cloudbuild profile to build images using Google Cloud Build
    - name: cloudbuild
      build:
        googleCloudBuild: {}
    
  • Se vuoi eseguire il deployment del progetto con Helm, consulta la documentazione di Helm.

Specificare dove sono archiviate le immagini container

L'archiviazione delle immagini container

Prima di eseguire il deployment dell'applicazione, devi definire un repository di immagini predefinito da utilizzare con il tuo progetto.

Per impostazione predefinita, il progetto è configurato per utilizzare il nome dell'immagine specificato nei manifest Kubernetes. Puoi anche personalizzare questa specifica dell'immagine. Una volta configurato il repository che preferisci (Artifact Registry, DockerHub o un repository privato), modifica le configurazioni di esecuzione e specificalo come repository di immagini predefinito nelle impostazioni di configurazione di esecuzione.

Questi sono accessibili dalla finestra di dialogo Esegui/Esegui debug delle configurazioni nella barra delle attività in alto in Modifica configurazioni > Sviluppa su Kubernetes > Repository di immagini.

Il repository di immagini predefinito nella configurazione di esecuzione è impostato con il formato "gcr.io/" e vengono presentate opzioni di completamento automatico in base al progetto corrente e al cluster attivo

Per ulteriori informazioni sulla specifica delle preferenze per le immagini container, consulta la guida alla configurazione delle impostazioni delle immagini container.

Impostazioni di build

Una volta impostata l'immagine container, puoi configurarne le impostazioni di build. Cloud Code supporta i tipi di artefatto Docker, Jib e Buildpacks.

Nella scheda Build / Deploy delle impostazioni di configurazione di esecuzione (Modifica configurazioni > Sviluppa su Kubernetes), puoi configurare le impostazioni di build per il tuo profilo predefinito.

Impostazioni di build visualizzate nella scheda Build/Deploy

Per ulteriori informazioni su come specificare le impostazioni di build per l'immagine, consulta la guida alla configurazione delle preferenze di build delle immagini container.

Passaggi successivi

Assistenza

Per inviare un feedback o segnalare un problema nel tuo IDE IntelliJ, vai a Strumenti > Cloud Code > Guida / Informazioni > Invia feedback o segnala un problema per segnalare un problema su GitHub.