Curso práctico de Docker y Microservicios (apto para todos)
What you'll learn
- Diferencia entre aplicaciones monolíticas y aplicaciones basadas en microservicios
- La importancia de una arquitectura basada en microservicios
- Qué es Docker y cómo empezar a usarlo
- Cómo crear contenedores de Docker a partir de imágenes
- Cómo descargar imágenes oficiales pero también a crear tus propias imágenes
Requirements
- Muchas ganas de aprender
- Una computadora o laptop y conexión a internet
Description
¿Has escuchado hablar de Docker y microservicios?
En este curso revisamos los problemas que Docker resuelve, y los beneficios que nos aporta una arquitectura basada en microservicios.
Este es un curso práctico, ya que en cada módulo:
Vemos de manera bien puntual los conceptos, explicados a través de ejemplos.
Y pasamos a interactuar con los comandos que nos ofrece cada herramienta.
Si no tienes mucha experiencia usando la terminal, la consola, o la también llamada línea de comandos, no te preocupes, porque en el curso explicamos el significado de cada comando ?.
Este curso contiene varios pequeños cuestionarios con preguntas para asegurar tu aprendizaje ✔
Sobre los siguientes temas:
- Aplicaciones monolíticas vs basadas en microservicios
- Máquinas virtuales vs contenedores
- Repositorios de imágenes (Docker Registry)
- Diferencia entre imagen y contenedor
- Cómo crear tu propia imagen a partir de imágenes oficiales
- Cómo convertir tu proyecto para empezar a usar imágenes y contenedores
- Docker Compose
- Docker Swarm
- Kubernetes (K8S)
- Etcétera!
Y por si fuera poco:
Los módulos finales son los mejores, ya que vemos escenarios reales de cómo empezar a usar Docker en nuestros proyectos de desarrollo.
Entre las aplicaciones de ejemplo que revisamos, creamos y/o configuramos, tenemos:
- Scripts escritos en Bash, código Go de Docker
- Aplicación web usando Flask (un framework Python)
- Aplicación web basada en Node.js + MongoDB + Mongo Express
- Proyecto Wordpress + MySQL + phpMyAdmin
- Proyecto Laravel + MySQL + Nginx
- Python + Node.js + .NET Core (o Java) + Redis + PostgreSQL
Who this course is for:
- Desarrolladores web (frontend o backend)
- Desarrolladores móviles
- Desarrolladores de videojuegos
- Apto para estudiantes de todos los niveles
Instructor
Te cuento un poco sobre mí:
Amo la programación, y todo lo relacionado con el pensamiento lateral.
He participado en el desarrollo de cientos de proyectos (de desarrollo de software), colaborando en el desarrollo de programas de escritorio, sistemas web y aplicaciones móviles.
Estudié Ingeniería de Sistemas y me gradué con las mejores notas en modelamiento de bases de datos, algoritmos, estructuras de datos, análisis numérico, entre otros cursos.
Aunque en la universidad la enseñanza no fue como esperaba, siempre estuve aprendiendo de forma autodidacta sobre distintas tecnologías.
Conozco muchas tecnologías, y aunque no uso todas en mi día a día, siempre encuentro un proyecto en dónde aplicarlas y recordarlas con nostalgia. Más o menos el orden en que las conocí va así: C++, Java, C#, VisualBasic, SQLServer, Matlab, HTML, CSS, Javascript, JQuery, PHP, MySQL, Ajax, Python, Laravel, Android, Firebase, Django, MongoDB, Ruby, Push notifications, Swift, Unity, Vue, Node.js, Pusher, Kotlin.
Lo sé. He mencionado lenguajes de programación, frameworks, bibliotecas, bases de datos, todo mezclado. Aunque a veces puede resultar confuso usar una tecnología por temporadas, al final siento que todo se complementa. Aprender de todo un poco me ha permitido tener una visión panorámica sobre el desarrollo en general.
En conclusión, me gusta programar y jugar juegos multijugador en línea. Pero lo que más me agrada es poder compartir lo que aprendo. Siento que de esta forma puedo inmortalizar mi aprendizaje, ahorrarle tiempo a las demás personas, y aprender temas con mayor profundidad.
Luego de todos estos años, puedo decir que verdaderamente mi pasión es aprender y compartir lo aprendido.
¡Gracias por permitirme esto!