Publicado el 15 de Marzo del 2019
2.931 visualizaciones desde el 15 de Marzo del 2019
2,9 MB
107 paginas
Creado hace 8a (17/06/2016)
PROYECTO
GESTIÓN DE
CONTENEDORES
DOCKER
-
KUBERNETES
Proyecto y formación en centros de trabajo
2º ASIR
María Cabrera Gómez de la Torre
Índice de contenido
DOCKER Y KUBERNETES
INTRODUCCIÓN A DOCKER ......................................................................................3
UN POCO DE HISTORIA................................................................................................3
REQUISITOS MÍNIMOS.................................................................................................3
CARACTERÍSTICAS.......................................................................................................4
VENTAJAS Y DESVENTAJAS......................................................................................5
USOS Y RECOMENDACIONES....................................................................................6
ARQUITECTURA............................................................................................................6
COMPONENTES..............................................................................................................7
DIFERENCIAS CON LAS MÁQUINAS VIRTUALES.................................................9
INSTALACIÓN DE DOCKER.......................................................................................10
Instalación y primeros pasos en Windows..................................................................10
INSTALACIÓN EN UBUNTU 14.04............................................................................17
CONFIGURACIÓN OPCIONAL..............................................................................19
COMENZANDO CON DOCKER..................................................................................23
PRINCIPALES COMANDOS DOCKER .................................................................23
IMÁGENES................................................................................................................26
TRABAJANDO CON IMÁGENES......................................................................27
EJECUCIÓN DE CONTENEDORES........................................................................31
COMANDO RUN..................................................................................................31
MODO INTERACTIVO............................................................................................33
CREANDO IMÁGENES DOCKER..........................................................................35
DETACHED o BACKGROUND...............................................................................38
MAPEO DE PUERTOS.............................................................................................40
DOCKERHUB............................................................................................................42
VOLÚMENES............................................................................................................45
VARIABLES DE ENTORNO....................................................................................46
CONFIGURACIÓN DE RED....................................................................................46
ELIMINAR CONTENEDORES................................................................................47
DOCKERFILE................................................................................................................48
CONSTRUIR EL CONTENEDOR............................................................................48
DOCKERFILE COMANDOS....................................................................................49
EJEMPLO DOCKERFILE.........................................................................................55
LIMITACIÓN DE RECURSOS.................................................................................58
INICIO AUTOMÁTICO............................................................................................59
DOCKER-MACHINE.....................................................................................................60
BIBLIOGRAFÍA.............................................................................................................65
KUBERNETES...............................................................................................................66
CARACTERÍSTICAS................................................................................................66
ARQUITECTURA.....................................................................................................67
KUBERNETES NODE..............................................................................................69
OTROS CONCEPTOS...............................................................................................72
REDES EN KUBERNETES.......................................................................................73
VOLÚMENES EN KUBERNETES...........................................................................74
VOLÚMENES PERSISTENTES...............................................................................78
INSTALACIÓN..........................................................................................................81
INSTALACIÓN EN CENTOS...................................................................................82
1
María Cabrera Gómez de la Torre
CREANDO PODS y RC.................................................................................................92
CREANDO SERVICIOS..........................................................................................102
BIBLIOGRAFÍA KUBERNETES................................................................................105
DOCKER Y KUBERNETES
2
María Cabrera Gómez de la Torre
INTRODUCCIÓN A DOCKER
DOCKER Y KUBERNETES
Docker es un proyecto de código abierto que permite automatizar el despliegue de
aplicaciones dentro de “contenedores”.
Éste contenedor empaqueta todo lo necesario para que uno o más procesos (servicios o
aplicaciones) funcionen: código, herramientas del sistema, bibliotecas del sistema, dependencias,
etc. Ésto garantiza que siempre se podrá ejecutar, independientemente del entorno en el que
queramos desplegarlo. No hay que preocuparse de qué software ni versiones tiene nuestra máquina,
ya que nuestra aplicación se ejecutará en el contenedor,.
UN POCO DE HISTORIA
Salomon Hykes comenzó Docker comenzó como un proyecto interno dentro de dotCloud,
empresa enfocada a PaaS (plataforma como servicio). Fué liberado como código abierto en marzo
de 2013.
Con el lanzamiento de la versión 0.9 (en marzo de 2014) Docker dejó de utilizar LXC como
entorno de ejecución por defecto y lo reemplazó con su propia librería, libcontainer (escrita en Go),
que se encarga de hablar directamente con el kernel.
Actualmente es uno de los proyectos con más estrellas en GitHub, con miles de
bifurcaciones (forks) y miles de colaboradores.
REQUISITOS MÍNIMOS
Docker funciona de forma nativa en entornos Linux a partir de la versión 3.8 del Kernel.
Algunos Kernels a partir de la versión 2.6.x y posteriores podrían ejecutar Docker, pero los
resultados pueden variar, por lo que oficialmente no está soportado.
3
María Cabrera Gómez de la Torre
Otro requisito es que sólo está preparado para arquitecturas de 64 bits (actualmente x86_64
y amd64).
DOCKER Y KUBERNETES
Mensaje de error al intentar instalar en arquitectura de 32 bits
Para usar Docker en entornos Windows o MAC han creado una herramienta, Boot2Docker,
que no es más que una máquina virtual ligera de Linux con Docker ya instalado. Dicha imagen la
arrancamos con Virtualbox, Vmware o con la herramienta que tengamos instalada.
Otra manera es con un instalador “todo en uno” para MAC y Windows. Este instalador trae
un cliente para Windows, la imagen de una máquina virtual Linux, Virtualbox y msys-git unix
tools.
CARACTERÍSTICAS
Las principales características de Docker son:
• Portabilidad: el contenedor Docker podemos desplegarlo en cualquier sistema, sin
necesidad de volver a configurarlo o realizar las instalaciones necesarias para que la
aplicación funcione, ya que todas las dependencias son empaquetadas con la aplicación en el
contenedor.
• Ligereza: los contenedores Docker sólo contienen lo que las diferencia del sistema operativo
en el que se ejecutan, no se virtualiza un SO completo.
• Autosuficiencia: un contenedor Docker no contiene todo un sistema operativo completo,
sólo aquellas librerías, archivos y configuraciones necesarias para desplegar las
funcionalidades que contenga.
4
María Cabrera Gómez de la Torre
DOCKER Y KUBERNETES
VENTAJAS Y DESVENTAJAS
Usar contenedores Docker permite a des arrolladores y administradores de sistemas probar
aplicaciones o servicios en un entorno seguro e igual al de producción, reduciendo los tiempos de
pruebas y adaptaciones entre los entornos de prueba y producción.
Las principales ventajas de usar contenedores Docker son:
• Las instancias se inician en pocos segundos.
•
Son fácilmente replicables.
• Es fácil de automatizar y de integrar en entornos de integración continua.
• Consumen menos recursos que las máquinas virtuales tradicionales.
• Mayor rendimiento que la virtualización tradicional ya que corre directamente sobre el
Kernel de la máquina en la que se aloja, evitando al hypervisor.
• Ocupan mucho menos espacio.
•
Permite aislar las dependencias de una aplicación de las instaladas en el host.
• Existe un gran repositorio de imágenes ya creadas sobre miles de aplicaciones, que además
pueden modificarse libremente.
Por todo esto Docker ha entrado con mucha fuerza en el mundo del desarrollo, ya que
permite desplegar las aplicaciones en el mismo entorno que tienen en producción o viceversa,
permite desarrollarlas en el mismo entorno que tendrán en producción.
Aunque también tiene algunas desventajas:
• Sól
Comentarios de: Proyecto gestión de contenedores Docker - Kubernetes (0)
No hay comentarios