Ejercicio de programación: Crear un archivo Docker Compose con varios servicios
Este ejercicio de programación está diseñado para poner a prueba tus conocimientos en Docker. Es un ejercicio para expertos que requiere un dominio completo de la tecnología.
Información adicional del ejercicio
Preparar un archivo docker-compose.yml
que despliegue un entorno de desarrollo compuesto por tres servicios: un frontend desarrollado con Angular, un backend en Spring Boot, y una base de datos PostgreSQL. Este desafío pone a prueba tu capacidad para trabajar con Docker y Docker Compose con varios servicios.
Contenido del ejercicio
Prepara un archivo docker-compose.yml
que defina los tres siguientes servicios:
Frontend (Angular):
- Utiliza la imagen de Docker
nginx:alpine
para servir los archivos estáticos del proyecto Angular. - Debe estar disponible en el puerto
4200
en el anfitrión (80
en el contenedor). - Se asume que el proyecto ya está construido y los archivos estáticos se encuentran en una carpeta
./dist/
, y deben montarse en el contenedor en/usr/share/nginx/html
. - Debe poder acceder al backend (depende del backend).
Backend (Spring Boot):
- Asume que dentro de una carpeta
./backend
existe un Dockerfile llamadomyBackend
que define una imagenspring_app:latest
, con todo preparado para ser utilizada. - Debe exponer el puerto
8080
(en anfitrión y contenedor). - Debe poder acceder a la base de datos (depende de la base de datos).
Base de Datos (PostgreSQL):
- Utiliza la imagen oficial de PostgreSQL
postgres:latest
. - Configura variables de entorno para el usuario (
POSTGRES_USER: user1
), la contraseña (POSTGRES_PASSWORD: password1
), y el nombre de la base de datos (POSTGRES_DB: mydatabase
). - Debe disponer de un volumen
postgres_data
, que se monta en/var/lib/postgresql/data
. Este volumen debe ser definido dentro del docker-compose.
Escribe el archivo docker-compose.yml
para la version 3.8
. No es necesario configurar una red personalizada.
Lección relacionada
Este ejercicio está relacionado con la lección "Docker Compose para varios servicios" de Docker. Te recomendamos revisar la lección antes de comenzar.
Ver lección relacionadaMás ejercicios de Docker
Explora más ejercicios de programación en Docker para mejorar tus habilidades y obtener tu certificación.
Ver más ejercicios de DockerSolución al ejercicio de programación en Docker
¡Desbloquea la solución completa!
Completa el ejercicio de programación en Docker para acceder a la solución paso a paso, explicaciones detalladas y mejores prácticas.
Practica con ejercicios de programación en Docker
Mejora tus habilidades con cientos de ejercicios de práctica, recibe retroalimentación instantánea y obtén tu certificación cuando estés listo.
Asistente de IA
Aprende de tus errores
Progreso
Mide tu avance
Certificación
Valida tus habilidades
Únete a miles de desarrolladores mejorando sus habilidades en Docker