Tienes un servicio Spring Boot. Describe cómo lo meterías en un contenedor y lo ejecutarías en Kubernetes en AWS o Azure.
Respuesta
- Build:
mvn clean package crea un JAR en CI; escribe un Dockerfile (o un build multi-stage) a partir de una imagen JRE pequeña; ejecuta con un usuario no root. - Sube la imagen a un registry (ECR o ACR) con una etiqueta de versión; nunca dependas de
latest. - Kubernetes: Deployment (réplicas, requests y limits de recursos, probes de readiness y liveness apuntando a
/actuator/health), Service (ClusterIP) e Ingress para HTTP. - Configuración: ConfigMap para ajustes, Secret o gestor de secretos externo para contraseñas; perfil de Spring mediante variable de entorno.
- Escalado: HorizontalPodAutoscaler por CPU o métricas propias.
- Nube: EKS (AWS) o AKS (Azure), base de datos gestionada (RDS o Azure SQL), identidades con IAM role o managed identity.
- Observabilidad: logs a stdout, métricas con Actuator y Prometheus, alertas.
Practica esta pregunta en Repaso