¿Qué no es Docker?
Docker no es un sistema de virtualización, los contenedores Docker solo contienen partes de software y no todo el sistema operativo.
Docker maneja contenedores similares a Linux Containers (LXC), podríamos decir que es un software de paravirtualización a nivel de Sistema Operativo, que aísla a nivel de Kernel. Es decir, cada contenedor tiene su parte del sistema operativo únicamente necesario para ejecutar el software o código que contiene.
Las imágenes de Docker están compuestas por múltiples capas, en primer lugar hay la capa del sistema operativo, que contiene lo mínimo necesario para que un sistema operativo funcione, luego se van añadiendo las distintas capas de software para que este se pueda ejecutar junto con todas las librerías y binarios necesarios. Lo equivalente seria en ir poniendo cristales con código escrito uno encima del otro y al final veríamos un código completo, pudiendo, ir quitando o poniendo capas de cristal nuevo a medida de nuestras necesidades.
¿Qué me aporta Docker?
Un contenedor Docker te aporta, escalabilidad tanto horizontal como vertical y potabilidad. Esto significa que una aplicación hecha en un contenedor Docker en la maquina del desarrollador, va a funcionar igual en entornos de producción, ya que lo que se portan son todos los binarios, códigos y servicios necesarios como si de una imagen se tratase, además Docker permite escalar en horizontal, añadiendo tantos workers como sean necesarios o vertical, portando el Contenedor a un entorno con más recursos.
Cuales son los componentes básicos de Docker?
Docker se compone de un cliente y un servidor, este cliente se conecta con el servidor mediante una REST API. La interfaz de cliente es en texto de consola de comandos. Cuando se instala Docker, este por defecto, ya viene con los componentes cliente y servidor.
Conceptos básicos de Docker
Inicialmente se empieza a partir de una Imagen, estas imágenes se encuentran en un repositorio, por defecto la de hub.docker.com, aunque puedes crear tu propio repositorio privado de Docker.
Una vez descargada una imagen en tu maquina puedes levantar un contenedor a partir de esta imagen, realizando los cambios necesarios para que tu software funcione a base de ir añadiendo «capas» a esta imagen.
Esta imagen se puede encender, parar, actualizar, inspeccionar, renombrar, actualizar, … ¡vamos! ¡casi como una maquina virtual!
La imagen modificada, se puede convertir en un nuevo contenedor y este lo puedes subir a tu repositorio o al repositorio publico de Docker en hub.docker.com
Primeros pasos en Docker
En la siguiente entrada voy a mostrar como gestionar contenedores y imágenes. ¿¡Te gustaría!?
Deja una respuesta