0% encontró este documento útil (0 votos)
167 vistas5 páginas

Guía Básica de Docker para Devs

Este documento ofrece una introducción a Docker para principiantes. Explica que Docker permite crear "máquinas virtuales" ligeras llamadas contenedores. Una imagen de Docker contiene un sistema operativo u otros servicios preinstalados, y los contenedores se crean a partir de estas imágenes para ejecutar aplicaciones de forma aislada. Los volúmenes permiten almacenar datos fuera del contenedor para que persistan independientemente de su ciclo de vida.

Cargado por

algio2005
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
167 vistas5 páginas

Guía Básica de Docker para Devs

Este documento ofrece una introducción a Docker para principiantes. Explica que Docker permite crear "máquinas virtuales" ligeras llamadas contenedores. Una imagen de Docker contiene un sistema operativo u otros servicios preinstalados, y los contenedores se crean a partir de estas imágenes para ejecutar aplicaciones de forma aislada. Los volúmenes permiten almacenar datos fuera del contenedor para que persistan independientemente de su ciclo de vida.

Cargado por

algio2005
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Introducción a Docker para principiantes

guiadev.com/introduccion-a-docker/

Andrés April 25, 2016

Dificultad: Intermedio
Tiempo de Lectura: 5 minutos
Docker es relativamente nuevo y un proyecto que ha crecido de forma rápida dado a que
permite crear “Maquinas Virtuales” muy ligeras (en términos de uso de recursos y tiempo
de respuesta). Hemos escrito “Máquinas Virtuales” con comillas pues realmente Docker no
crea maquinas virtuales en si, sino que son como entornos virtuales enjaulados. Hoy
comenzaremos a explorar una introducción a Docker desde cero, para principiantes, para
ver por qué Docker se está volviendo tan popular entre la comunidad de desarrolladores.

Contenido

1 Introducción a Docker desde cero


1.1 ¿Qué es una Imagen en Docker?
1.2 ¿Qué es un Contenedor en Docker?
1.2.1 Características de una Imagen
1.2.2 Características de un Contenedor
1.3 ¿Qué son los Volúmenes en Docker?
1.4 Conclusión

Introducción a Docker desde cero


Vamos a explorar algunos principios básicos de Docker, definir como y para que funciona
cada propiedad de este potente proyecto que está cambiando la forma en que
virtualizamos entornos a nivel de desarrollo web.

Los contenedores son la vía que nos coloca Docker para tener el mismo uso que con las
maquinas virtuales creadas de la forma tradicional. Docker utiliza estos contenedores para
aislar uno o más procesos. Estos procesos en el Host necesitan Memoria, CPU, Acceso a
la Red y espacio en disco.

Es un ambiente perfecto para que las aplicaciones puedes funcionar de forma correcta.
Esto incluye algunos ejecutables y librerías específicas, además de la librería estándar de
C (libc). Obviamente el Kernel está detrás de muchos de estos componentes y todo el
acceso al Kernel es abstracta mediante la librería libc.

1/5
¿Qué es una Imagen en Docker?
Una parte básica de la introducción a Docker es entender qué es una imágen. Ya
comentamos que Docker y toda su funcionalidad depende o esta principalmente en el
manejo de Contenedores ahora bien si bien los contenedores son muy importantes
debemos conocer de donde nacen y para esto conoceremos el concepto “Imagen” que
viene siendo en si nuestro “sistema operativo” osea podemos decir que tenemos una
imagen de Centos, Ubuntu o Debian.

Ahora bien lo bueno de las imágenes es que pueden ser más que solo un sistema
operativo y podemos decir que tenemos una imagen de Nginx o una imagen de MySQL o
de Memcached ,que estos últimos en si son servicios pero en Docker podemos crear
imágenes a partir de unos servicios ya instalados y hasta configurados.

¿Qué es un Contenedor en Docker?


Los contenedores de Docker nacen a partir de una imagen y en estos contenedores
podemos solo ejecutar e instalar servicios, viene siendo como crear una maquina virtual a
partir de una imagen (snapshot) pero muchísimo más ligera. Viene siendo como el
siguiente ejemplo: tenemos una Imagen de Ubuntu 14.04 con Django instalado y vamos a
crear 3 Contenedores a partir de esta imagen de Ubuntu seria algo como esto.

Ahora los contenedores al igual que las maquinas virtuales tradicionales están aisladas del
2/5
host, luego cada contenedor debe tener su ID único y un nombre que sea legible por
cualquier humano esto es netamente para identificar cada contenedor y luego es necesario
que cada contenedor exponga los servicios que necesite y Docker permite exponer
puertos del contenedor para que el Host identifique cuando tratemos de entrar a cada
puerto lo que es conocido como el port forwarding podemos ver un ejemplo en la
siguiente imagen con los contenedores que hemos creado en el ejemplo anterior

Los contenedores están diseñados para ejecutar aplicaciones, es decir, no están


originalmente pensados para ejecutar todo lo que lleva una máquina aunque si se puede
utilizar los contenedores como máquinas virtuales, pero como veremos perderemos gran
flexibilidad ya que la principal funcionalidad que queremos es poder separar la parte de
ejecución con los datos.

Esto permite actualizar los servicios de forma rápida y ligera sin afectar los datos de tu
aplicación por ejemplo tienes tus datos de tu aplicación en tu máquina Host, luego crear
un contenedor y colocar compartida esta carpeta dentro del contenedor, para finalmente
después en este contenedor administrar cómo se ejecutarán por ejemplo servicios como
Nginx o Apache, y que estos últimos puedan despachar los archivos que están en la
carpeta compartida.

Características de una Imagen


Portátil: pueden ser versionadas en los repositorios de Docker Hub, o guardarse
como un archivo tar.
Estática: el contenido no se puede cambiar, a menos que hagas una nueva imagen.

Características de un Contenedor
Tiempo de ejecución: cada contenedor se ejecuta en un solo proceso.
Permisos de escritura: sólo tendrá permiso a sus propios archivos y a los volúmenes
asociados .
Capas: es en una imagen en base a un sistema operativo.

3/5
Estos términos aparecen en diversos contextos, y es importante ver cómo se relacionan
entre sí. Ahora que tenemos estos fundamentos básicos, podemos pasar a conocer más
sobre otro importante concepto de Docker: los volúmenes.

¿Qué son los Volúmenes en Docker?


Los volúmenes son para mantener los datos más allá de la vida útil de su contenedor. Son
espacios dentro del contenedor que almacenan datos fuera de ella, lo que le permite
destruir / reconstruir / cambiar las veces que queramos nuestro contenedor y se
mantendrán intactos sus datos.

Docker permite definir qué partes son la aplicación y qué partes son sus datos. Uno de los
mayores cambios en la mentalidad de que hay que hacer cuando se trabaja con Docker es
que los contenedores deben ser efímeros y desechables.

Los volúmenes son específicos de cada contenedor, puedes crear varios contenedores de
una sola imagen y definir el volumen para cada uno. Los volúmenes se almacenan en el
sistema de archivos del servidor que ejecuta el Docker. Todo lo que no es un volumen se
almacena en otro tipo de sistema de archivos, pero lo veremos más adelante, aquí
podemos ver un ejemplo en la siguiente imagen.

Conclusión
Ahora hemos visto que es el Docker, cuales son sus principales características, asi
pudimos conocer desde donde nacen los Contenedores y a que llamamos Imágenes para
luego integrarlo con nuestros Volúmenes de datos con estos conceptos bastante claros
podemos pasar a la parte practica de como administrar nuestro Docker para esto vamos a
crear un articulo completo en donde podremos aprender cada comando para comenzar a
trabajar con Docker.

Si te gustó esta introducción primaria, sígue con la parte 02:

Introducción a Docker – Parte 2

Otras lecturas recomendadas:

¿Docker vs Máquinas virtuales?

Cuéntanos: ¿Que te pareció la parte teórica de nuestra Introducción a Docker?


4/5
¿Crees que te cambiarías de la maquina virtual tradicional para desarrollar a
Docker?

5/5

También podría gustarte