Introducción
Imagine que es desarrollador de Java, compilar e implementar aplicaciones para ejecutarse en servidores locales. Es un proceso complicado organizar estos servidores y administrar las dependencias, el escalado y otras consideraciones.
A diferencia de las máquinas virtuales que emulan hardware, los contenedores se ejecutan directamente sobre el sistema operativo host, el kernel y el hardware como procesos ordinarios. Debido a esta simplicidad, los contenedores requieren menos recursos del sistema. El resultado es una superficie más pequeña con una sobrecarga considerablemente menor, tiempos de inicio de aplicaciones más rápidos y un gran caso de uso para el escalado a petición.
Con los contenedores, asegúrese de que las aplicaciones y las dependencias siempre están aisladas en imágenes de contenedor y listas para la implementación a escala.
En este módulo, primero se containeriza una aplicación Java existente. Desde Internet abierto y compartido bajo la licencia MIT, Flight Booking System for Airline Reservations es un sistema de reserva de vuelos totalmente adaptable y de ejemplo basado en la web, construido con la arquitectura Modelo-Vista-Controlador (MVC) realizada con Java Servlets y Java Server Pages (JSP). La aplicación web original se diseñó para ejecutarse en Java SE 8 y Tomcat 8.5. Sin embargo, se actualizó para modernizar la aplicación, lo que le permite ejecutarse en Java SE 17 y Tomcat 10.1.
Después de incluir la aplicación en contenedores, cree un Dockerfile y escriba las instrucciones de Docker necesarias para compilar una imagen de contenedor. A continuación, ejecutará la imagen de contenedor localmente y probará la aplicación. Después, inserte la imagen de contenedor en Azure Container Registry e impleméntela en Azure Kubernetes Service.
Al final de este módulo, podrá incluir en contenedores una aplicación de Java, insertar la imagen de contenedor en Azure Container Registry y, a continuación, implementarla en Azure Kubernetes Service.
Use su propia suscripción de Azure ( con acceso para crear, actualizar y quitar recursos) para implementar los recursos en este módulo. Si no tiene una suscripción a Azure, cree una cuenta gratuita antes de empezar.
Importante
Para evitar cargos innecesarios en su suscripción de Azure, recuerde desaprovisionar los recursos de Azure cuando finalice el módulo.
Objetivos de aprendizaje
Al final de este módulo, podrá realizar las siguientes tareas:
- Contenedorizar una aplicación de Java.
- Compilar una imagen de contenedor para la aplicación de Java.
- Ejecutar la imagen de contenedor localmente.
- Inserte la imagen de contenedor en Azure Container Registry.
- Implementar la imagen de contenedor en Azure Kubernetes Service.
Prerrequisitos
Como desarrollador de Java, ya está familiarizado con la creación de aplicaciones. A medida que complete los ejercicios de este módulo, usará una cuenta de Azure personal. Compruebe que dispone de los siguientes recursos:
- Una suscripción de Azure con acceso para crear, actualizar y quitar recursos.
- Instalaciones locales de la CLI de Docker, la CLI de Git y la CLI de Azure, versión 2.66 o posterior.