Compartilhar via


Início Rápido: Criar e efetuar push de imagens de contêiner do aplicativo Java Spring Boot para o Registro de Contêiner do Azure

Você pode usar este Início Rápido para criar imagens de contêiner do aplicativo Java Spring Boot e efetuar push para o Registro de Contêiner do Azure usando o Maven e o Jib. O uso do Maven e do Jib é um exemplo de como usar ferramentas de desenvolvedor para interagir com um registro de contêiner do Azure.

Pré-requisitos

Criar um aplicativo Spring Boot no Docker

As etapas a seguir mostram como criar um aplicativo Web Java Spring Boot em contêiner e testá-lo localmente.

  1. No prompt de comando, use o comando a seguir para clonar o exemplo de projeto Introdução ao Spring Boot no Docker.

    git clone https://github.com/spring-guides/gs-spring-boot-docker.git
    
  2. Altere o diretório para o projeto concluído.

    cd gs-spring-boot-docker/complete
    
  3. Use o Maven para compilar e executar o aplicativo de exemplo.

    mvn package spring-boot:run
    
  4. Teste o aplicativo Web navegando até http://localhost:8080 ou com o seguinte comando curl:

    curl http://localhost:8080
    

Você verá a seguinte mensagem exibida: Olá, mundo do Docker

Criar um Registro de Contêiner do Azure usando a CLI do Azure

Em seguida, você criará um grupo de recursos do Azure e seu ACR usando as seguintes etapas:

  1. Faça logon na conta do Azure usando o seguinte comando:

    az login
    
  2. Especifique a assinatura do Azure a ser usada:

    az account set -s <subscription ID>
    
  3. Crie um grupo de recursos para os recursos do Azure usados neste tutorial. No comando a seguir, substitua os espaços reservados pelo nome do seu recurso e uma localização como eastus.

    az group create \
        --name=<your resource group name> \
        --location=<location>
    
  4. Crie um Registro de Contêiner do Azure privado no grupo de recursos usando o comando a seguir. Substitua os espaços reservados pelos valores reais. O tutorial envia o aplicativo de exemplo para esse registro como uma imagem de Docker em etapas posteriores.

    az acr create \
        --resource-group <your resource group name> \
        --location <location> \
        --name <your registry name> \
        --sku Basic
    

Enviar por push seu aplicativo para o registro de contêiner via Jib

Por fim, você atualizará sua configuração de projeto e usará o prompt de comando para criar e implantar sua imagem.

Observação

Para fazer logon no Registro de Contêiner do Azure que você acabou de criar, será necessário ter o daemon do Docker em execução. Para instalar o Docker em seu computador, aqui está a documentação oficial do Docker.

  1. Faça logon no Registro de Contêiner do Azure por meio da CLI do Azure usando o comando a seguir. Substitua o espaço reservado pelo seu nome do Registro.

    az config set defaults.acr=<your registry name>
    az acr login
    

    O comando az config define o nome do Registro padrão a ser usado com os comandos az acr.

  2. Navegue até o diretório do projeto completo de seu aplicativo Spring Boot (por exemplo, "C:\SpringBoot\gs-spring-boot-docker\complete" ou " /users/robert/SpringBoot/gs-spring-boot-docker/complete"), e abra o arquivo pom.xml com um editor de texto.

  3. Atualize a coleção <properties> no arquivo pom.xml no XML a seguir. Substitua o espaço reservado pelo nome do Registro e adicione uma propriedade <jib-maven-plugin.version> com o valor 2.2.0 ou uma versão mais recente do jib-maven-plugin.

    <properties>
       <docker.image.prefix><your registry name>.azurecr.io</docker.image.prefix>
       <java.version>1.8</java.version>
       <jib-maven-plugin.version>2.2.0</jib-maven-plugin.version>
    </properties>
    
  4. Atualize a coleção <plugins> no arquivo de pom.xml para que o elemento <plugin> contenha uma entrada para o jib-maven-plugin, conforme mostrado no exemplo a seguir. Observe que estamos usando uma imagem base do MCR (Registro de Contêiner da Microsoft): mcr.microsoft.com/openjdk/jdk:11-ubuntu, que contém um JDK oficialmente compatível para o Azure. Para outras imagens base MCR com JDKs oficialmente suportados, veja Instalar o Microsoft Build do OpenJDK.

    <plugin>
      <artifactId>jib-maven-plugin</artifactId>
      <groupId>com.google.cloud.tools</groupId>
      <version>${jib-maven-plugin.version}</version>
      <configuration>
         <from>
             <image>mcr.microsoft.com/openjdk/jdk:11-ubuntu</image>
         </from>
         <to>
             <image>${docker.image.prefix}/${project.artifactId}</image>
         </to>
      </configuration>
    </plugin>
    
  5. Navegue para o diretório do projeto completo de seu aplicativo Spring Boot, execute o seguinte comando para compilar a imagem e envie por push a imagem para o registro:

    az acr login && mvn compile jib:build
    

Observação

Por motivos de segurança, a credencial criada por az acr login é válida somente por 1 hora. Se você receber um erro 401 Não autorizado, poderá executar o comando az acr login -n <your registry name> outra vez para se autenticar novamente.

Verificar sua imagem de contêiner

Parabéns! Agora você tem o build do aplicativo Java em contêineres no JDK com suporte do Azure enviado por push para seu ACR. Agora você pode testar a imagem implantando-a no Serviço de Aplicativo do Azure ou efetuando pull dela para o local com comando (substituindo o espaço reservado):

docker pull <your registry name>.azurecr.io/gs-spring-boot-docker

Próximas etapas

Para outras versões das imagens base oficiais do Java com suporte da Microsoft, confira:

Para saber mais sobre o Spring e o Azure, continue no Spring no Centro de Documentação do Azure.

Recursos adicionais

Para saber mais, consulte os recursos a seguir: