50% OFF Plus
--:--:--
¡Ver!

Docker: Crear un archivo Docker Compose con varios servicios

Código
Experto
Docker
Curso de Docker
20 min
150 XP
Actualizado: 27/08/2024

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.

Tipo: Ejercicio de código 20 minutos estimados 150 puntos de experiencia

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 llamado myBackend que define una imagen spring_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 relacionada

Má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 Docker
Alan Sastre - Autor del ejercicio

Alan Sastre

Ingeniero de Software y formador, CEO en CertiDevs

Ingeniero de software especializado en Full Stack y en Inteligencia Artificial. Como CEO de CertiDevs, Docker es una de sus áreas de expertise. Con más de 15 años programando, 6K seguidores en LinkedIn y experiencia como formador, Alan se dedica a crear ejercicios prácticos y contenido educativo de calidad para desarrolladores de todos los niveles.

Solución al ejercicio de programación en Docker

Contenido bloqueado

¡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.

solution.js
JavaScript
1 function solveChallenge ( input ) {
2 // Algoritmo optimizado O(n log n)
3 const data = parseInput ( input );
4 const sorted = data . sort (( a , b ) => a - b );
5
6 // Aplicar técnica de dos punteros
7 let left = 0 , right = sorted . length - 1 ;
8 const result = [];
9
10 while ( left < right ) {
11 const sum = sorted [ left ] + sorted [ right ];
12 if ( sum === target ) {
13 result . push ([ sorted [ left ], sorted [ right ]]);
14 left ++; right --;
15 } else if ( sum < target ) {
16 left ++;
17 } else {
18 right --;
19 }
20 }
21
22 return result ;
23 }
Código completo
Explicaciones
Mejores prácticas
+1.200 developers han resuelto este ejercicio de programación

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

Ejercicios de programación en Docker: Práctica y Certificación

Los ejercicios de programación son fundamentales para dominar Docker. Este ejercicio está diseñado para poner a prueba tus conocimientos prácticos y ayudarte a consolidar lo aprendido en las lecciones teóricas. La práctica constante con ejercicios de programación es la clave para convertirte en un desarrollador experto.

¿Por qué resolver ejercicios de programación?

Resolver ejercicios de programación en Docker te permite:

  • Aplicar conocimientos teóricos: Poner en práctica los conceptos aprendidos en las lecciones de Docker.
  • Identificar áreas de mejora: Descubrir qué conceptos necesitas reforzar en tu aprendizaje de Docker.
  • Prepararte para certificaciones: Los ejercicios te preparan para obtener certificados profesionales en Docker.
  • Mejorar tu perfil profesional: Demostrar tus habilidades prácticas en Docker.

Metodología de aprendizaje

Nuestros ejercicios de programación están diseñados siguiendo una metodología probada de aprendizaje progresivo. Cada ejercicio en Docker está cuidadosamente estructurado para llevar tus habilidades al siguiente nivel. Comenzamos con conceptos fundamentales y avanzamos gradualmente hacia desafíos más complejos que reflejan situaciones reales del desarrollo de software profesional.

Certificación y validación de conocimientos

Al completar ejercicios de programación, no solo mejoras tus habilidades técnicas, sino que también puedes obtener certificados que validan tu expertise en Docker. Estos certificados son reconocidos por empresas y pueden ser una gran adición a tu perfil profesional de LinkedIn o tu CV como desarrollador.

Los ejercicios están alineados con los estándares de la industria y cubren desde conceptos básicos hasta técnicas avanzadas de programación en Docker. Cada ejercicio incluye casos de prueba y ejemplos prácticos que te ayudarán a comprender mejor cómo aplicar lo aprendido en proyectos reales.

Nota: Para obtener el máximo beneficio de este ejercicio de programación, te recomendamos revisar primero las lecciones relacionadas de Docker y asegurarte de comprender los conceptos básicos antes de intentar resolver el ejercicio.