¡Hola lemoncoders! 👋🏻🍋
En este repositorio encontrarás todo el material necesario para el Bootcamp DevOps de Lemoncode. Cada uno de los profesores se ha encargado de crear el contenido de cada una de las sesiones, por lo que encontrarás una estructura de carpetas y ficheros que se corresponderán con cada una de las clases del bootcamp.
Este bootcamp está diseñado para proporcionar una formación completa en DevOps, cubriendo desde los fundamentos de Linux hasta tecnologías avanzadas de orquestación, CI/CD, cloud computing e infraestructura como código.
Este repositorio incluye un Dev Container configurado con todas las herramientas necesarias para el bootcamp:
- Azure CLI - Para trabajar con Azure
- .NET 8.0 - Para aplicaciones .NET
- kubectl - Para orquestación de Kubernetes
- GitHub CLI - Para integración con GitHub
- Node.js LTS - Para aplicaciones JavaScript/TypeScript
- Docker in Docker - Para trabajar con contenedores
- Y muchas más herramientas esenciales
- Abre el proyecto en VS Code
- Instala la extensión Dev Containers
- Presiona
Ctrl+Shift+P
y selecciona "Dev Containers: Reopen in Container" - ¡Todo listo para empezar!
Duración: Módulo 1 Tecnologías: Linux, Bash, CLI
Aprende los fundamentos esenciales de Linux:
- Sistema operativo Linux y distribuciones
- Sistema jerárquico de ficheros
- Comandos básicos de CLI y navegación
- Gestión de usuarios, grupos y permisos
- Bash scripting y automatización
- Configuración de red y conectividad SSH
- Uso de herramientas como
curl
,grep
,find
🎯 Ejercicios prácticos incluidos
Duración: Módulo 2 Tecnologías: Docker, Docker Compose, Registries
Domina la tecnología de contenedores:
- Día I: Introducción a Docker, comandos básicos, gestión de contenedores
- Día II: Trabajo con imágenes, registries, Docker Hub
- Día III: Creación de Dockerfiles personalizados
- Día IV: Volumes, bind mounts y persistencia de datos
- Día V: Redes en Docker, comunicación entre contenedores
- Día VI: Docker Compose para aplicaciones multi-contenedor
🏆 Incluye Lemoncode Challenge: Proyectos completos con stack Node.js y .NET
Duración: Módulo 2 Tecnologías: Kubernetes, Minikube, KinD, kubeadm
Aprende orquestación de contenedores con Kubernetes:
- Conceptos fundamentales: Pods, Services, Deployments
- ReplicaSets y gestión de réplicas
- ConfigMaps y Secrets
- Volúmenes y persistencia
- Ingress Controllers para exposición de servicios
- Namespaces y gestión de recursos
🔧 Entornos soportados:
- Minikube (desarrollo local)
- KinD (Kubernetes in Docker)
- Vagrant con kubeadm (entorno completo)
📋 Ejercicios prácticos:
- Monolito en memoria
- Monolito con base de datos
- Aplicaciones distribuidas con Ingress
Duración: Módulo 3 Tecnologías: Jenkins, GitLab CI/CD, GitHub Actions
Implementa pipelines de integración y despliegue continuo:
- Configuración y administración
- Pipelines declarativas
- Librerías compartidas
- Integración con Docker
- GitLab Runners
- Pipelines avanzadas
- Container Registry
- Despliegue automatizado
- Workflows y eventos
- Actions del marketplace
- Secrets y variables
- Integración con cloud providers
🎯 Ejercicios obligatorios: Pipelines para aplicaciones Java + Gradle
Duración: Módulo 4 Tecnologías: Azure, AWS, AKS, EKS
Despliega en la nube:
- Azure: Azure Kubernetes Service (AKS)
- AWS: Elastic Kubernetes Service (EKS)
- Gestión de clusters en la nube
- Integración con servicios nativos
- Monitoreo y logging
📚 Incluye guías paso a paso para crear tu primer cluster
Duración: Módulo 5 Tecnologías: Terraform, Terraform Cloud
Automatiza la gestión de infraestructura:
- Conceptos de Infrastructure as Code
- Sintaxis de Terraform (HCL)
- Providers y recursos
- State management
- Terraform Cloud y backends remotos
- Módulos reutilizables
- Best practices y patrones
Duración: Módulo 6 Tecnologías: Prometheus, Grafana, Logging
Implementa monitoreo y observabilidad:
- Métricas con Prometheus
- Visualización con Grafana
- Alerting y notificaciones
- Logging centralizado
- Tracing distribuido
- Docker & Docker Compose
- Kubernetes
- Minikube, KinD
- Helm (para gestión de paquetes)
- Jenkins
- GitLab CI/CD
- GitHub Actions
- Docker Registry
- Microsoft Azure (AKS)
- Amazon AWS (EKS)
- Google Cloud Platform
- Terraform
- Terraform Cloud
- ARM Templates / CloudFormation
- Prometheus
- Grafana
- ELK Stack
- Jaeger
- Conocimientos básicos de línea de comandos
- Familiaridad con Git
- Conceptos básicos de redes
- VS Code con extensión Dev Containers (recomendado)
- Docker Desktop (para entorno local)
- Git para control de versiones
- Minikube o KinD para Kubernetes local
- VirtualBox y Vagrant (ejercicios avanzados)
- Cuenta en GitHub para CI/CD
- Cuenta en Azure o AWS para módulos de cloud
-
Clona el repositorio:
git clone https://github.com/Lemoncode/bootcamp-devops-lemoncode.git cd bootcamp-devops-lemoncode
-
Abre en VS Code con Dev Container (recomendado):
- Instala la extensión "Dev Containers"
- Abre el proyecto en VS Code
- Selecciona "Reopen in Container" cuando aparezca la notificación
-
O configura tu entorno local:
- Instala Docker
- Instala las herramientas específicas de cada módulo
-
Sigue los módulos en orden:
- Cada módulo tiene su propio README con instrucciones detalladas
- Los ejercicios están marcados como obligatorios u opcionales
bootcamp-devops-lemoncode/
├── .devcontainer/ # Configuración del entorno de desarrollo
├── 00-fundamentos-linux/ # Módulo 1: Linux y CLI
├── 01-contenedores/ # Módulo 2: Docker y contenedores
├── 02-orquestacion/ # Módulo 2: Kubernetes
├── 03-cd/ # Módulo 3: CI/CD
├── 04-cloud/ # Módulo 4: Cloud Computing
├── 05-iac/ # Módulo 5: Terraform
├── 06-monitoring/ # Módulo 6: Observabilidad
└── README.md # Este archivo
Para superar el bootcamp, deberás completar:
- Ejercicios obligatorios de cada módulo
- Proyectos prácticos específicos
- Lemoncode Challenges cuando estén disponibles
¿Encontraste un error o quieres mejorar el contenido?
- Haz fork del repositorio
- Crea una rama para tu feature
- Envía un pull request
- Documentación: Cada módulo tiene su README detallado
- Issues: Usa el sistema de issues de GitHub para reportar problemas
- Comunidad: Únete a la comunidad de Lemoncode
- Bootcamp DevOps Lemoncode - Información oficial
- Documentación Docker
- Documentación Kubernetes
- Terraform Documentation
¡Feliz aprendizaje! 🍋✨