Compartir comentarios
Las respuestas se generan en base a la documentación.

Laboratorio: El ciclo de vida del desarrollo de software (SDLC) contenerizado

Construye una API Node.js real y luego aplica contenedores en cada etapa del ciclo de vida de desarrollo de software. Escribirás un archivo Compose para el desarrollo local, pruebas de integración con Testcontainers, una tubería (pipeline) de CI/CD y manifiestos de Kubernetes, utilizando la misma imagen de contenedor en todo el proceso.

Iniciar el laboratorio

  1. Inicia el labspace:

    $ docker compose -p labspace -f oci://dockersamples/labspace-containerized-sdlc up -d
    
  2. Abre tu navegador en http://dockerlabs.xyz.

  3. Cuando hayas terminado, elimina el labspace:

    $ docker compose -p labspace down
    

Qué aprenderás

Al final de este Labspace, habrás completado lo siguiente:

  • Configurar un entorno de desarrollo local contenerizado con Docker Compose y Compose Watch.
  • Escribir pruebas de integración que inicien una base de datos real utilizando Testcontainers.
  • Construir una tubería (pipeline) de CI/CD que pruebe, construya y publique una imagen de contenedor automáticamente.
  • Escribir manifiestos de Kubernetes y desplegar una aplicación en vivo en un clúster k3s.
  • Configurar la tubería para provocar un despliegue automático en cada confirmación (push) a main.

Módulos

#MóduloDescripción
1Introducción: Conociendo la aplicaciónRecorrido por la API de TaskFlow y comprensión del viaje del SDLC que nos espera
2Desarrollo local con Docker ComposeEscribir un compose.yaml para aprovisionar una base de datos local y un visualizador
3Contenerizar tu entorno de desarrolloAgregar la aplicación a Compose con recarga en caliente (hot-reloading) a través de Compose Watch
4Pruebas de integración con TestcontainersEscribir pruebas independientes que inicien un contenedor real de PostgreSQL
5Integración continua con Gitea ActionsConstruir una tubería que pruebe, construya y publique una imagen de contenedor
6Despliegue en KubernetesEscribir manifiestos y desplegar en un clúster k3s en vivo con implementaciones automatizadas
7El SDLC contenerizado: Una recapitulaciónRevisar los beneficios de portabilidad, coherencia y reproducibilidad obtenidos