Temario del curso
Introducción
- Introducción a los conceptos y flujos de trabajo avanzados de Docker
- Repaso de los principios de contenerización y casos de uso
- Terminología de Docker y componentes principales
- Visión general de los objetivos del curso y del entorno práctico
Resumen de las características y arquitectura de Docker
- Motor de Docker (Docker Engine) y sus componentes
- Cliente, demonio, imágenes, contenedores y registros de Docker
- Arquitectura de Docker y ciclo de vida de los contenedores
- Docker Hub y registros privados
- Fundamentos de la interfaz de línea de comandos (CLI) de Docker para usuarios avanzados
- Gestión de recursos y configuraciones de Docker
Configuración de Docker
- Instalación de Docker Community Edition
- Configuración del entorno de Docker
- Verificación de la instalación de Docker
- Configuración de Docker para desarrollo y pruebas
- Gestión de la configuración y el almacenamiento de Docker
- Introducción a la resolución de problemas del entorno de Docker
Construcción de sus propias imágenes de Docker
- Comprensión de las imágenes y capas de Docker
- Redacción de Dockerfiles eficaces
- Instrucciones de Dockerfile y mejores prácticas
- Gestión del contexto de compilación
- Compilación y etiquetado de imágenes
- Uso de
.dockerignore - Optimización del tamaño de la imagen y el rendimiento de la compilación
- Gestión de versiones y etiquetas de imágenes
- Compilaciones de Docker multi-etapa
- Publicación de imágenes en un registro de contenedores
Ejecución de aplicaciones Docker de múltiples contenedores con Docker Compose
- Introducción a Docker Compose
- Definición de servicios con archivos Compose
- Configuración de redes y volúmenes
- Gestión de variables de entorno
- Dependencias de servicios y orden de inicio
- Ejecución y escalado de múltiples servicios
- Compilación de imágenes de aplicaciones con Compose
- Gestión de la configuración de la aplicación
- Depuración de aplicaciones de múltiples contenedores
- Mejores prácticas de Compose
Los desafíos de desplegar muchas aplicaciones de Docker
- Gestión de contenedores en múltiples hosts
- Escalado y disponibilidad de la aplicación
- Detección de servicios
- Balanceo de carga
- Gestión de configuración y secretos
- Desafíos del almacenamiento persistente
- Monitoreo y registro a gran escala
- Actualizaciones escalonadas y despliegue de aplicaciones
- Recuperación de fallos de contenedores y hosts
Cómo la orquestación de contenedores le ayuda a mantener el control
- Introducción a la orquestación de contenedores
- Beneficios y limitaciones de la orquestación
- Comparación de Docker Swarm, Kubernetes y otras soluciones
- Programación y gestión de cargas de trabajo
- Detección de servicios y redes
- Escalado y autoguación de aplicaciones
- Despliegues escalonados y reversión
- Gestión de recursos y aislamiento de cargas de trabajo
- Selección de una plataforma de orquestación adecuada
Kubernetes en acción
- Arquitectura de Kubernetes y componentes principales
- Pods, nodos y clústeres
- Despliegues y ReplicaSets
- Servicios y detección de servicios
- ConfigMaps y Secrets
- Espacios de nombres y organización de recursos
- Escalado de aplicaciones
- Actualizaciones escalonadas y reversión
- Fundamentos de redes de Kubernetes
- Almacenamiento persistente
- Verificaciones de salud y resiliencia de la aplicación
- Despliegue de aplicaciones de Docker en Kubernetes
- Resolución de problemas de cargas de trabajo en Kubernetes
Redes avanzadas de Docker
- Arquitectura de redes de Docker
- Controladores de red bridge, host, overlay y otros
- Comunicación entre contenedores
- Comunicación entre contenedores y sistemas externos
- Redes personalizadas de Docker
- Aislamiento de red
- Detección de servicios
- Publicación y exposición de puertos
- Redes en entornos multi-host
- Resolución de problemas de redes de Docker
Seguridad de Docker
- Fundamentos de la seguridad de Docker
- Aislamiento de contenedores y límites de seguridad
- Ejecución de contenedores con privilegios adecuados
- Gestión de usuarios y permisos dentro de los contenedores
- Capacidades de Linux y controles de seguridad
- Seguridad de imágenes de Docker
- Escaneo de vulnerabilidades en imágenes
- Gestión segura de secretos
- Seguridad de registros de Docker
- Seguridad y aislamiento de redes
- Seguridad del demonio de Docker
- Mejores prácticas de seguridad de contenedores
Configuración de un flujo de trabajo de integración continua para aplicaciones de Docker
- Introducción a la IC para aplicaciones contenerizadas
- Compilación automática de imágenes de Docker
- Pruebas automatizadas de imágenes y contenedores de Docker
- Etiquetado de imágenes y gestión de versiones
- Integración del control de fuentes con compilaciones de Docker
- Escaneo automático de vulnerabilidades en imágenes
- Publicación de imágenes en registros
- Gestión de artefactos de compilación
- Implementación de verificaciones de calidad automatizadas
- Diseño de una pipeline de IC de Docker repetible
Integración de aplicaciones de Docker en un flujo de trabajo existente
- Integración de Docker con flujos de trabajo de desarrollo existentes
- Contenerización de aplicaciones existentes
- Integración de Docker con plataformas de CI/CD
- Gestión de entornos de desarrollo, pruebas, preproducción y producción
- Estrategias de despliegue automatizado
- Gestión de configuración entre entornos
- Integración de registros
- Aprobaciones de despliegue y gestión de liberaciones
- Monitoreo de despliegues de aplicaciones
- Mantenimiento de la consistencia entre entornos
Mejores prácticas de contenedores y orquestación
- Diseño de imágenes de Docker mantenibles
- Optimización del inicio y rendimiento de contenedores
- Gestión del ciclo de vida de contenedores
- Asignación eficaz de recursos
- Estrategias de registro y monitoreo
- Gestión de configuración y secretos
- Alta disponibilidad y tolerancia a fallos
- Escalado de aplicaciones contenerizadas
- Despliegue seguro de contenedores
- Estrategias de versionado y liberación
- Mejores prácticas de arquitectura de orquestación
Resolución de problemas
- Diagnóstico de fallos en el inicio de contenedores
- Investigación de registros de aplicaciones y contenedores
- Inspección de contenedores e imágenes
- Resolución de problemas de red
- Resolución de problemas de almacenamiento y volúmenes
- Diagnóstico de fallos en la compilación de imágenes
- Resolución de problemas en aplicaciones de Docker Compose
- Investigación de problemas de recursos y rendimiento
- Fundamentos de la resolución de problemas en Kubernetes
- Ejercicios prácticos de resolución de problemas
Resumen y conclusión
- Repaso de los conceptos clave de Docker
- Repaso de la creación de imágenes y la gestión de contenedores
- Repaso del despliegue de aplicaciones de múltiples contenedores
- Repaso de los conceptos de orquestación y Kubernetes
- Repaso de las redes y la seguridad de Docker
- Repaso de la integración de CI/CD
- Mejores prácticas de contenerización y orquestación
- Ejercicio práctico final
- Preguntas y discusión
Requerimientos
- Experiencia previa trabajando con contenedores de Docker.
Audiencia
- Desarrolladores
- Ingenieros de DevOps
- Administradores de sistemas
Reseñas (7)
El amplio conocimiento del formador, su capacidad para resolver problemas que surgían espontáneamente durante las sesiones prácticas. Además, los ejercicios mismos son adecuados para ayudar a consolidar los temas contenidos en el curso.
Cosmin - Ness Digital Engineering
Curso - Advanced Docker
Traducción Automática
El ritmo y el hecho de que nos sumergimos en profundidad muy rápidamente, pero creo que podríamos haber ido aún más a fondo desde el primer día (considerando que es un entrenamiento avanzado de Docker, se supone que hay ciertos conocimientos básicos de Docker).
SORIN ROMAN - Ness Digital Engineering
Curso - Advanced Docker
Traducción Automática
el formador es una persona amable y explicó todo muy bien, de manera estructurada y coherente. ejercicios geniales para la práctica
Andreas - Ness Digital Engineering
Curso - Advanced Docker
Traducción Automática
La formación tuvo un buen ritmo, adaptado a la experiencia de cada participante. Además, tiene un equilibrio agradable entre nociones teóricas y ejercicios prácticos.
Laurentiu - Ness Digital Engineering
Curso - Advanced Docker
Traducción Automática
La estructura y la forma en que se presentó. Para mí, este entrenamiento fue como un viaje: desde las aplicaciones hasta los contenedores de Docker, hasta Kubernetes. Los ejercicios fueron atractivos y pertinentes.
Andrei - Ness Digital Engineering
Curso - Advanced Docker
Traducción Automática
tener a la mano la MV
Pamela Perez Aguirre - AT&T
Curso - Advanced Docker
Considero que fue el hecho de como se abordaron los temas, son muchos los conceptos pero me agrado que nos permitió comprender como es que docker funciona y de lo que consta.