Introdução
Imagine que você é um desenvolvedor java, criando e implantando aplicativos para serem executados em servidores locais. É um processo desafiador para orquestrar esses servidores e gerenciar dependências, dimensionamento e outras considerações.
Ao contrário das máquinas virtuais que emulam hardware, os contêineres são executados diretamente na parte superior do sistema operacional host, kernel e hardware como processos comuns. Devido a essa simplicidade, os contêineres exigem menos recursos do sistema. O resultado é um volume menor com substancialmente menos sobrecarga, tempos de inicialização mais rápidos do aplicativo e um ótimo caso de uso para dimensionamento sob demanda.
Com contêineres, você garante que seus aplicativos e dependências estejam sempre isolados em imagens de contêiner e prontos para implantação em escala.
Neste módulo, primeiro você contêineriza um aplicativo Java existente. Na Internet aberta e compartilhado com a licença do MIT, o Sistema de Reserva de Voo para Reservas Aéreas é um sistema de reserva de voo totalmente responsivo e baseado na Web baseado em uma companhia aérea de exemplo, criada com a arquitetura MVC (Model View Controller) feita usando Java Servlets e JSPs (Java Server Pages). O aplicativo Web original foi projetado para ser executado em Java SE 8 e Tomcat 8.5. No entanto, ele foi atualizado para modernizar o aplicativo, permitindo que ele seja executado no Java SE 17 e tomcat 10.1.
Depois de colocar o aplicativo em contêiner, você constrói um Dockerfile e grava as instruções do Docker necessárias para criar uma imagem de contêiner. Em seguida, você executa a imagem de contêiner localmente e testa o aplicativo. Em seguida, você envia a imagem de contêiner para o Registro de Contêiner do Azure e a implanta no Serviço de Kubernetes do Azure.
Ao final deste módulo, você poderá colocar em contêiner um aplicativo Java, efetuar push da imagem de contêiner para o Registro de Contêiner do Azure e, em seguida, implantar no Serviço de Kubernetes do Azure.
Você usa sua própria assinatura do Azure – com acesso para criar, atualizar e remover recursos – para implantar os recursos neste módulo. Se você não tiver uma assinatura do Azure, crie uma conta gratuita antes de começar.
Importante
Para evitar encargos desnecessários na assinatura do Azure, lembre-se de desprovisionar os recursos do Azure quando terminar este módulo.
Objetivos de aprendizagem
Ao final deste módulo, você poderá realizar as seguintes tarefas:
- Conteinerize um aplicativo Java.
- Crie uma imagem de contêiner para o aplicativo Java.
- Execute a imagem de contêiner localmente.
- Envie por push a imagem de contêiner para o Registro de Contêiner do Azure.
- Implante a imagem de contêiner no Serviço de Kubernetes do Azure.
Pré-requisitos
Como desenvolvedor do Java, você já está familiarizado com a criação de aplicativos. Ao concluir os exercícios neste módulo, você usará uma conta pessoal do Azure. Verifique se você tem os seguintes recursos:
- Uma assinatura do Azure com acesso para criar, atualizar e remover recursos.
- Instalações locais da CLI do Docker, da CLI do Git e da CLI do Azure, versão 2.66 ou posterior.