Utilizzare un'applicazione esistente in Cloud Code for IntelliJ

Se hai già un progetto configurato con manifest Kubernetes, un Dockerfile o Jib per creare le immagini, puoi aprirlo e utilizzarlo con il plug-in. L'unica configurazione aggiuntiva necessaria è un file YAML di 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.

Bootstrap automatico del progetto

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

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

Prerequisiti

Per poter creare un file skaffold.yaml ed eseguire le configurazioni necessarie, il progetto deve soddisfare i seguenti prerequisiti:

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

  • (Opzione 2) Il progetto è compilabile utilizzando Buildpack e ha risorse Kubernetes.

Configurare la configurazione di esecuzione di Kubernetes

Se i prerequisiti sono soddisfatti, Cloud Code ti chiederà di creare un file skaffold.yaml (se non ne esiste già uno) e le configurazioni di esecuzione necessarie:

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

  1. Fai clic sulla notifica. Se possibile, la configurazione viene creata automaticamente.

    Se non è possibile creare automaticamente la configurazione Skaffold perché sono state rilevate più immagini o builder, Cloud Code visualizzerà una finestra di dialogo in cui ti verrà chiesto 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 a 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 ne esiste già uno), nonché 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. Dopo aver aggiunto il supporto, puoi iniziare a eseguire ed 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 di aggiungerne uno esistente al progetto.

Per creare manualmente un file skaffold.yaml utilizzando i modelli live:

  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 dei modelli live e poi 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 di cui 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 le 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 build per progetti Java Maven/Gradle con il plug-in Jib (la sezione di deployment rimane la stessa dell'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 progetto.

Per impostazione predefinita, il progetto è configurato per utilizzare il nome dell'immagine specificato nei manifest Kubernetes. Puoi anche personalizzare questa specifica dell'immagine. Dopo aver 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 della configurazione di esecuzione.

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

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

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

Impostazioni di build

Dopo aver impostato l'immagine container, puoi configurarne le impostazioni di build. Cloud Code supporta i tipi di artefatto Docker, Jib e Buildpack.

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

Impostazioni di build visualizzate nella scheda Build/Deploy

Per ulteriori informazioni sulla specifica delle impostazioni di build per l'immagine, consulta la guida Configurare le preferenze di build delle immagini container.

Passaggi successivi

Assistenza

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