
En esta primera clase se presenta el curso, hablando de que problemática se cubre. Muchas veces cuando hablamos de los servidores que tenemos en nuestra organización se nos olvida tener en cuenta el entorno en el que trabajan los desarrolladores.
En esta clase veremos que implicaciones tiene que los entornos de trabajo locales de cada desarrollador no entren dentro del ciclo de actualizaciones del software.
En esta clase iremos desgranando el temario del curso y cuales son los objetivos del mismo.
Este curso se llama Docker sencillo para desarrolladores porque ese es su objetivo.
Sencillo ya que no pretende ser un curso exhaustivo sobre Docker, porque a día de hoy las capacidades que tiene Docker son enormes, sino ser un curso orientado a que un desarrollador que tiene que ponerse a utilizar docker en su proyecto sea capaz de hacerlo de la forma más eficiente.
Para desarrolladores ya que Docker es una herramienta con un enfoque DevOps, es decir que tanto afecta a los desarrolladores como a los operadores, ya que son normalmente los que hacen las instalaciones de los productos. En este curso el enfoque que vamos a tener es la del desarrollador.
Aunque también sirve como curso de introducción a Docker para operadores.
Hay varias secciones dentro del curso.
En esta clase empezaremos a ver las diferentes opciones que existen para tener un entorno de desarrollo actualizado en los entornos locales de trabajo.
La opción sobre la que hablaremos será la de usar un zip con el entorno de trabajo y distribuirlo mediante una llave USB o pendrive. Veremos que ventajas tiene y que inconvenientes.
En esta clase seguiremos viendo las opciones para tener un entorno de desarrollo actualizado en los entonos locales de trabajo.
En esta ocasión hablaremos sobre el empleo de máquinas virtuales como VirtualBox o VMWare, Veremos cuales son las ventajas que nos aportan y cuales son los inconvenientes que tienen.
Esta clase tratará sobre como podemos solventar algunas de las carencias que tiene el utilizar máquinas virtuales para tener un entorno de desarrollo actualizado en los entornos locales de trabajo.
Veremos que esta opción nos acerca a la solución ideal, pero sigue teniendo algunas carencias.
Con esta clase daremos por finalizada la sección de introducción al curso y veremos porque Docker es la solución a día de hoy más completa para tener entornos de trabajo actualizados en los puestos de trabajo en local.
En esta clase veremos que es Docker, explicado de una forma muy didáctica, persiguiendo el comprender los fundamentos mas que en comprender las herramientas. Ya que conocer las herramientas sin el necesario contexto no son útiles.
Para hacer mas amena la explicación está dividida en dos partes, siendo esta la primera.
En esta clase veremos que es Docker, explicado de una forma muy didáctica, persiguiendo el comprender los fundamentos mas que en comprender las herramientas. Ya que conocer las herramientas sin el necesario contexto no son útiles.
Para hacer mas amena la explicación está dividida en dos partes, siendo esta la segunda.
Breve introducción a la instalación de las diferentes herramientas que vamos a necesitar durante el curso.
Instalaremos Docker en un Linux, concretamente un Centos, en un macOS y en Windows. También instalaremos un Eclipse como herramienta típica de desarrollo en entornos Java.
En esta clase veremos la instalación de Docker en un Linux, concretamente un Centos 7.
En esta clase veremos la instalación de Docker en macOS utilizando la versión nativa de Docker.
En esta clase veremos la instalación de Docker en un Windows utilizando la herramienta ToolBox, ya que Windows no soporta Docker de forma nativa, todavía.
En esta clase veremos la instalación de Eclipse, como herramienta de desarrollo típica dentro de entornos Java.
En esta clase veremos una muy breve introducción a los diferentes conceptos de Docker.
En esta clase explicaremos que es WildFly y porque lo vamos a usar como ejemplo de servidor a usar en Docker.
En esta clase veremos la explicación de los conceptos de Docker imagen y contenedor.
En esta clase veremos la aplicación práctica en la línea de comandos de la teoría vista anteriormente.
En esta clase veremos la aplicación práctica en eclipse de la teoría vista anteriormente.
En esta clase veremos la aplicación práctica en Kitematic de la teoría vista anteriormente.
En esta clase veremos las diferencias entre los conceptos de run y start
En esta clase veremos la aplicación práctica en eclipse de la teoría vista anteriormente.
En esta clase veremos la aplicación práctica en la línea de comandos de la teoría vista anteriormente.
En esta clase veremos la aplicación práctica en Kitematic de la teoría vista anteriormente.
En esta clase veremos las diferentes alternativas para parar un contenedor
En esta clase veremos la aplicación práctica de como parar un contenedor en las tres herramientas.
En esta clase veremos como eliminar contenedores e imágenes.
En esta clase veremos la aplicación práctica de como eliminar contenedores e imágenes.
En esta clase veremos la explicación de como usar puertos en Docker.
En esta clase veremos la aplicación práctica en eclipse de la teoría vista anteriormente.
En esta clase veremos la aplicación práctica en la línea de comandos de la teoría vista anteriormente.
En esta clase veremos la aplicación práctica en Kitematic de la teoría vista anteriormente.
En esta clase veremos la explicación de como manera carpetas en Docker.
En esta clase veremos la aplicación práctica en eclipse de la teoría vista anteriormente.
En esta clase veremos la aplicación práctica en la línea de comandos de la teoría vista anteriormente.
En esta clase veremos la aplicación práctica en Kitematic de la teoría vista anteriormente.
En esta clase veremos la explicación de como las variables de entorno en Docker. Para ello nos ayudaremos de la base de datos MariaDB/MySQL.
En esta clase veremos la aplicación práctica en eclipse de la teoría vista anteriormente.
En esta clase veremos la aplicación práctica en la línea de comandos de la teoría vista anteriormente.
En esta clase veremos la aplicación práctica en Kitematic de la teoría vista anteriormente.
En esta clase veremos como acceder por consola a un contenedor.
En esta clase veremos la aplicación práctica en eclipse de la teoría vista anteriormente.
En esta clase veremos la aplicación práctica en la línea de comandos de la teoría vista anteriormente.
En esta clase veremos la aplicación práctica en Kitematic de la teoría vista anteriormente.
En esta clase veremos como hacer referencias entre diferentes contenedores.
En esta clase veremos la aplicación práctica en eclipse de la teoría vista anteriormente.
En esta clase veremos la aplicación práctica en la línea de comandos de la teoría vista anteriormente.
En esta clase veremos la aplicación práctica en Kitematic de la teoría vista anteriormente.
En esta clase veremos como ver los los de los contenedores Docker.
En esta clase veremos la aplicación práctica en las tres herramientas de la teoría vista anteriormente.
En esta clase veremos una introducción a la creación de nuestras propias imágenes en Docker.
En esta clase veremos como partir de una imagen ya existente para crear una nueva imagen.
En esta clase veremos como añadir ficheros a nuestra imagen Docker.
En esta clase veremos como ejecutar comandos en nuestra imagen Docker.
En esta clase veremos como exponer puertos en nuestra imagen Docker.
En esta clase veremos como cambiar el arranque de la imagen Docker.
En esta clase veremos como exponer carpetas dentro de nuestra imagen Docker.
En esta clase veremos como cambiar el usuario con el que se ejecutan los comandos en nuestra imagen Docker.
En esta clase veremos como añadir variables de entorno a nuestra imagen Docker.
En esta clase veremos cual es el uso que se le puede dar a Docker dentro del flujo de promoción entre entornos, también conocido como devops o cadena de suministro de software.
Esto lo veremos utilizando GitHub, y el hub de docker.
En esta clase veremos lo que necesitamos para utilizar Docker y GitHub para generar imágenes automáticamente.
En esta clase veremos como utilizar el hub de Docker para que nos construya nuestras propias imágenes.
En esta clase veremos como podemos tener una integración continua de nuestras imágenes.
En esta clase veremos como manejar varias imágenes de una forma conjunta, mediante docker compone.
Motivación del curso
El desarrollo de aplicaciones, sobre todo en el entorno web, ha evolucionado mucho desde sus orígenes. En los comienzos las aplicaciones eran muy sencillas y con un simple servidor web y una base de datos se solía solventar.
Hoy día, en cambio, las necesidades de nuestros clientes son mucho mayores y consiguientemente las aplicaciones son mucho mas complejas y requieren de mucha mas infraestructura.
Que cada integrante del equipo de desarrollo tenga un entorno de desarrollo correctamente configurado y actualizado requiere cada vez mas esfuerzo.
Docker nos permite solventar esa situación ya que permite disponer de la infraestructura ya configurada y disponible de una forma sencilla.
Si eres un desarrollador de software que quieres reducir el tiempo que dedicas a toda la parte de infraestructura de tu proyecto este curso puede servirte de ayuda ya que trata Docker desde la perspectiva de un desarrollador y de una forma muy didáctica para que aunque no sepas nada de Docker puedas entender todos los conceptos y llevarlos a la práctica.
También es un curso adecuado como introducción a Docker, para perfiles DevOps, ya que cubre el uso de Docker a nivel de usuario, la creación de contenedores y las posibilidades que ofrece de cara a integrarlo en el desarrollo de aplicaciones.