Use uma aplicação existente no Cloud Code para IntelliJ

Se tiver um projeto já configurado com manifestos do Kubernetes, um Dockerfile ou o Jib para criar as suas imagens, pode abri-lo e usá-lo com o plug-in. A única configuração adicional necessária é um ficheiro YAML do Skaffold que pode ser gerado automaticamente ou criado através do modelo fornecido.

Depois de terminar a configuração do YAML do Skaffold, certifique-se de que especifica onde as imagens de contentores estão armazenadas onde a imagem do projeto está prestes a ser enviada.

Arranque automático de projetos

O seu projeto tem de ter um ou mais manifestos do Kubernetes. Se o Cloud Code detetar manifestos do Kubernetes no projeto, o Cloud Code tenta iniciar.

Se o Cloud Code não detetar uma configuração do Skaffold existente, é-lhe pedido que ajude a configurá-la.

Pré-requisitos

O seu projeto tem de cumprir os seguintes pré-requisitos para lhe ser pedido que crie um ficheiro skaffold.yaml e execute as configurações necessárias:

  • (Opção 1) O seu projeto tem um Dockerfile e está configurado para o Jib ou

  • (Opção 2) O seu projeto é compilável através de Buildpacks e tem recursos do Kubernetes.

Configure a configuração de execução do Kubernetes

Se os pré-requisitos forem cumpridos, o Cloud Code apresenta-lhe uma notificação para criar um ficheiro skaffold.yaml (se ainda não existir) e todas as configurações de execução necessárias:

Notificação com um link para criar as suas configurações de execução do Kubernetes do Cloud Code

  1. Clique na notificação. Isto cria automaticamente a sua configuração, se possível.

    Se a criação automática da configuração do Skaffold não for possível devido à deteção de várias imagens ou criadores, o Cloud Code apresenta uma caixa de diálogo a pedir-lhe que forneça mapeamentos entre as imagens e os criadores detetados.

    Especifique as definições de compilação a usar na configuração do Skaffold

    Em alternativa, também pode configurar uma configuração do Skaffold navegando para Ferramentas > Cloud Code > Kubernetes e selecionando Adicionar suporte do Kubernetes.

    Esta opção analisa os recursos do Kubernetes do seu projeto e gera um ficheiro skaffold.yaml (se ainda não existir) bem como as configurações de execução necessárias. As duas configurações de execução geradas incluem uma para executar o projeto no Kubernetes e outra para desenvolvimento num cluster do Kubernetes.

  2. Depois de adicionar o suporte, pode começar a executar e depurar o seu projeto no Kubernetes através das configurações de execução adicionadas recentemente.

Crie manualmente uma configuração do Skaffold do Cloud Code

Pode optar por criar manualmente um novo ficheiro skaffold.yaml ou adicionar um ficheiro existente ao seu projeto.

Para criar um ficheiro skaffold.yaml manualmente através de modelos dinâmicos, siga estes passos:

  1. Crie um novo ficheiro denominado skaffold.yaml no diretório raiz do seu projeto (clique com o botão direito do rato > Novo > Ficheiro).

  2. Com o cursor no novo ficheiro, prima Ctrl+Space para apresentar as sugestões de modelos dinâmicos e, em seguida, escolha o modelo do Skaffold pretendido.

    Usar o modelo YAML do Skaffold

  3. Preencha o campo de imagem com o nome da imagem do projeto e o campo de manifestos com uma lista dos recursos do Kubernetes que quer implementar a partir do IDE.

  4. Depois de o Cloud Code determinar que o seu ficheiro skaffold.yaml é válido, clique no comando para criar configurações de execução do Kubernetes.

    Crie uma notificação de destino de execução do Kubernetes

Exemplos de configurações do Skaffold do Cloud Code

  • Compilações baseadas em Dockerfile:

    build:
      artifacts:
        - image: image_name
    deploy:
      kubectl:
        manifests:
          - k8s/web.yaml
          - k8s/backend.yaml
    
  • Secção de compilação para projetos Java Maven/Gradle com o plugin Jib (a secção de implementação permanece igual à do exemplo acima):

    build:
    artifacts:
    - image: image_name
      jib: {}
    
  • Se quiser definir configurações de compilação, teste e implementação para diferentes contextos, pode ter perfis diferentes. Segue-se um exemplo de um perfil do Cloud Build para configurar o Cloud Code para criar imagens com o Cloud Build:

    profiles:
    # use the cloudbuild profile to build images using Google Cloud Build
    - name: cloudbuild
      build:
        googleCloudBuild: {}
    
  • Se quiser implementar o seu projeto com o Helm, consulte a documentação do Helm.

Especificar onde as imagens de contentores são armazenadas

Armazenamento de imagens de contentores

Antes de implementar a sua aplicação, tem de definir um repositório de imagens predefinido para usar com o seu projeto.

Por predefinição, o projeto está configurado para usar o nome da imagem especificado nos seus manifestos do Kubernetes. Também pode personalizar esta especificação de imagem. Depois de configurar o seu repositório preferido (Artifact Registry, DockerHub ou um repositório privado), edite as configurações de execução e especifique-o como um repositório de imagens predefinido nas definições de configuração de execução.

Pode aceder a estas opções na caixa de diálogo Run/Debug configurations (Executar/depurar configurações) na barra de tarefas superior em Edit Configurations > Develop on Kubernetes > Image repository.

O repositório de imagens predefinido na configuração de execução está a ser definido com o formato "gcr.io/" e a apresentar opções de preenchimento automático com base no projeto atual e no cluster ativo

Para mais informações sobre como especificar as suas preferências de imagem de contentor, consulte o guia de configuração das definições de imagem de contentor.

Definições de compilação

Depois de definir a imagem do contentor, pode configurar as respetivas definições de compilação. O Cloud Code suporta tipos de artefactos Docker, Jib e Buildpacks.

No separador Compilar / Implementar das definições de configuração de execução (Editar configurações > Desenvolver no Kubernetes), pode configurar as definições de compilação para o seu perfil predefinido.

Definições de compilação apresentadas no separador Compilar/Implementar

Para mais informações sobre como especificar as definições de compilação da sua imagem, consulte o guia de configuração das preferências de compilação de imagens de contentores.

O que se segue?

Obter apoio técnico

Para enviar feedback ou comunicar um problema no seu IDE IntelliJ, aceda a Tools > Cloud Code > Help / About > Submit feedback or report an issue para comunicar um problema no GitHub.