SlideShare una empresa de Scribd logo
Docker &
Networking
CONTENEDORES CON DOCKER
Cristian Casis Villarreal
Linux System Engineer/SRE
Website: cristiancasis.com
Guía del curso
Qué es Docker y su Historia
Maquinas virtuales vs Docker
Componentes de Docker
Ventajas
Comandos iniciales
Imágenes
Dockerfile
Arquitectura
Microservicios. Estilo arquitectónico. Ventajas de
dockers para una arquitectura de microservicios.
Cuando usar Docker
Casos practicos desarrollados en el curso
Qué es Docker
Es un proyecto open source para empaquetar,
transportar y ejecutar cualquier aplicación como un
contenedor ligero.
●Su versión inicial se publica el 13 de Marzo de 2013 y
está escrito en el lenguaje GO.
●Se trata de un nuevo modelo de virtualización que crea
una capa de abstracción con el S.O.
●Un contenedor conforma el contexto de ejecución de una
aplicación.
Maquinas Virtuales vs Docker
Libcontainer (Derivado de LXC).
●Linux kernel namespaces (aislamiento del sistema de
ficheros, red y procesos).
●Aislamiento de los recursos (Cpu, Memoria, etc) por
medio de los cgroups.
●Copy-on-write
●Logging. Salidas de la línea de comando accesibles con
el cliente docker.
●Consola interactiva.
Componentes
Ventajas de usar Docker
Comandos iniciales
●docker - lista los posibles comandos
●docker version - version del demonio y del cliente
●docker info - informacion del sistema
●docker ps - ver el estado de los contenedores que estan corriendo
●docker info - informacion del sistema
●docker run- crear un container en el sistema (docker run --name firstcontainer ubuntu
●docker rm id_container- eliminar un container
●docker stats- ver el estado de los containers
Las imagenes Docker son plantillas (que incluyen una aplicación,
los binarios y las librerias necesarias) que se utilizan para
construir contenedores Docker y ejecutarlos (los contenedores
ejecutarán una imagen previamente compilada)
- Una imagen está formada por capa "layers" que se montan unas encima de
otras.
Dichas capas estan en modo lectura
- La última capa se monta como lectura/escritura y da lugar al contenedor
- Las capas usan el patron "copy-write"
Imágenes
Dockerfile
Es un archivo de texto plano que contiene las instrucciones necesarias para
automatizar la creación de una imagen que será utilizada posteriormente para la
ejecución de instancias específicas
FROM ubuntu:18.04
COPY . /app
RUN make /app
CMD python /app/app.py
+ Dockerfile
Los comandos más habituales en un fichero Dockerfile son:
FROM →De que imagen partimos para crear la nueva
MAINTEINER →Quien mantiene el contenedor
RUN →Ejecuta una instrucción en el contenedor
ADD →Añade un fichero o carpeta al contenedor
 ENV →Establece una variable de entorno en el
contenedor
 EXPOSE →Indica que se va a exponer un puerto del
contenedor
 ENTRYPOINT / CMD→Qué se ejecuta ( define el proceso que se va a ejecutar -> por
defecto "/bin/sh -c
Tipos de Arquitecturas
Monolitica: Una arquitectura monolítica es autónoma, es decir, no depende de
otros servicios externos a ella y únicamente se centra en sus propios componentes.
Microservicios: la gran ventaja de una arquitectura de microservicios es que ofrece
cada uno de los componentes de forma aislada, siendo más fáciles de mantener y de
responder frente a distintos niveles de escalabilidad.
Microservicios. Estilo arquitectónico. Ventajas de
dockers para una arquitectura de microservicios.
Los microservicios son tanto un estilo de arquitectura como un modo de programar
software. Con los microservicios, las aplicaciones se dividen en sus elementos más
pequeños e independientes entre sí.
- APLICACIONES LISTAS PARA COMERCIALIZARSE MÁS RAPIDAMENTE
- GRAN CAPACIDAD DE EXPANSION
- CAPACIDAD DE RECUPERACIÓN
- FACILIDAD DE IMPLEMENTACION
- ACCESIBILIDAD
- APLICACIONES MÁS ABIERTAS
Cuando usar Docker - Sus beneficios
- Las instancias de Docker son más ligeras: Para desplegar una app como imagen de una
máquina virtual, lo más probable es que tengas que incluir un sistema operativo entero en la
imagen. Con un contenedor, solo la app y unas cuantas capas de base tienen que ir dentro del
contenedor
- Los contenedores son muy, muy, muy consistentes: Puedes tener varios contenedores
con versiones iguales del entorno y evitar problemas de versiones en diferentes entornos
- Los contenedores son gratuitos y de código abierto: Docker es totalmente gratis para
que cualquiera lo descargue e instale
Los contenedores duplican de varias formas las ventajas frente a las
maquinas virtuales

Más contenido relacionado

La actualidad más candente

La actualidad más candente (19)

Docker y kubernetes para desarrolladores .NET - Meetup Barcelona 2019
Docker y kubernetes para desarrolladores .NET - Meetup Barcelona 2019 Docker y kubernetes para desarrolladores .NET - Meetup Barcelona 2019
Docker y kubernetes para desarrolladores .NET - Meetup Barcelona 2019
 
Usando docker
Usando dockerUsando docker
Usando docker
 
Presentación nubes de contenedores con docker swarm
Presentación nubes de contenedores con docker swarmPresentación nubes de contenedores con docker swarm
Presentación nubes de contenedores con docker swarm
 
FROM lost to the docker
FROM lost to the dockerFROM lost to the docker
FROM lost to the docker
 
Docker desde cero
Docker desde ceroDocker desde cero
Docker desde cero
 
Presentación Docker
Presentación DockerPresentación Docker
Presentación Docker
 
Introducción a Docker
Introducción a DockerIntroducción a Docker
Introducción a Docker
 
Presentación Docker
Presentación DockerPresentación Docker
Presentación Docker
 
Introduction to docker. Stratio
Introduction to docker. StratioIntroduction to docker. Stratio
Introduction to docker. Stratio
 
introducción a Docker
introducción a Dockerintroducción a Docker
introducción a Docker
 
Divide y vencerás con docker y core os
Divide y vencerás con docker y core osDivide y vencerás con docker y core os
Divide y vencerás con docker y core os
 
Docker y PostgreSQL
Docker y PostgreSQLDocker y PostgreSQL
Docker y PostgreSQL
 
Semana 1 Microservicios
Semana 1   MicroserviciosSemana 1   Microservicios
Semana 1 Microservicios
 
Introducción a Docker
Introducción a DockerIntroducción a Docker
Introducción a Docker
 
Ponencia virtualización sl alejandro vázquez 2
Ponencia virtualización sl alejandro vázquez 2Ponencia virtualización sl alejandro vázquez 2
Ponencia virtualización sl alejandro vázquez 2
 
Lab3 cristian gastelbondo
Lab3 cristian gastelbondoLab3 cristian gastelbondo
Lab3 cristian gastelbondo
 
¿Qué es docker?
¿Qué es docker?¿Qué es docker?
¿Qué es docker?
 
nerdear.la 2016 - Docker workshop
nerdear.la 2016 - Docker workshopnerdear.la 2016 - Docker workshop
nerdear.la 2016 - Docker workshop
 
Docker orientado al desarrollo de aplicaciones con NodeJS
Docker orientado al desarrollo de aplicaciones con NodeJSDocker orientado al desarrollo de aplicaciones con NodeJS
Docker orientado al desarrollo de aplicaciones con NodeJS
 

Similar a Docker and networking

docker-primeros-pasos-y-puesta-en-practica-de-una-arquitectura-basada.pdf
docker-primeros-pasos-y-puesta-en-practica-de-una-arquitectura-basada.pdfdocker-primeros-pasos-y-puesta-en-practica-de-una-arquitectura-basada.pdf
docker-primeros-pasos-y-puesta-en-practica-de-una-arquitectura-basada.pdf
JorgeLuisValdivieso1
 
docker-primeros-pasos-y-puesta-en-practica-de-una-arquitectura-basada.pdf
docker-primeros-pasos-y-puesta-en-practica-de-una-arquitectura-basada.pdfdocker-primeros-pasos-y-puesta-en-practica-de-una-arquitectura-basada.pdf
docker-primeros-pasos-y-puesta-en-practica-de-una-arquitectura-basada.pdf
JorgeLuisValdivieso1
 

Similar a Docker and networking (20)

Curso gratuito de Docker
Curso gratuito de DockerCurso gratuito de Docker
Curso gratuito de Docker
 
Docker para Dummies
Docker para DummiesDocker para Dummies
Docker para Dummies
 
administracion de sistemas de informacion
administracion de sistemas de informacionadministracion de sistemas de informacion
administracion de sistemas de informacion
 
De desarrollo a producción usando docker
De desarrollo a producción usando dockerDe desarrollo a producción usando docker
De desarrollo a producción usando docker
 
Docker containers-itb-2021
Docker containers-itb-2021Docker containers-itb-2021
Docker containers-itb-2021
 
Iniciando con containers en azure
Iniciando con containers en azureIniciando con containers en azure
Iniciando con containers en azure
 
docker-primeros-pasos-y-puesta-en-practica-de-una-arquitectura-basada.pdf
docker-primeros-pasos-y-puesta-en-practica-de-una-arquitectura-basada.pdfdocker-primeros-pasos-y-puesta-en-practica-de-una-arquitectura-basada.pdf
docker-primeros-pasos-y-puesta-en-practica-de-una-arquitectura-basada.pdf
 
docker-primeros-pasos-y-puesta-en-practica-de-una-arquitectura-basada.pdf
docker-primeros-pasos-y-puesta-en-practica-de-una-arquitectura-basada.pdfdocker-primeros-pasos-y-puesta-en-practica-de-una-arquitectura-basada.pdf
docker-primeros-pasos-y-puesta-en-practica-de-una-arquitectura-basada.pdf
 
Containers - Hablemos de Docker
Containers - Hablemos de DockerContainers - Hablemos de Docker
Containers - Hablemos de Docker
 
Dockerparadesarrollo
DockerparadesarrolloDockerparadesarrollo
Dockerparadesarrollo
 
Docker 101 Workshop - WomenWhoCode Buenos Aires
Docker 101 Workshop - WomenWhoCode Buenos AiresDocker 101 Workshop - WomenWhoCode Buenos Aires
Docker 101 Workshop - WomenWhoCode Buenos Aires
 
Docker - Entorno de trabajo configurado en 1 minuto [WCBilbao]
Docker - Entorno de trabajo configurado en 1 minuto [WCBilbao]Docker - Entorno de trabajo configurado en 1 minuto [WCBilbao]
Docker - Entorno de trabajo configurado en 1 minuto [WCBilbao]
 
Curso Kubernetes CodeURJC
Curso Kubernetes CodeURJCCurso Kubernetes CodeURJC
Curso Kubernetes CodeURJC
 
Corriendo SQL Server en Docker
Corriendo SQL Server en DockerCorriendo SQL Server en Docker
Corriendo SQL Server en Docker
 
Introduccion a SQL Server 2017 en Docker
Introduccion a SQL Server 2017 en Docker Introduccion a SQL Server 2017 en Docker
Introduccion a SQL Server 2017 en Docker
 
Game of pods - Kubernetes
Game of pods - KubernetesGame of pods - Kubernetes
Game of pods - Kubernetes
 
Microservices: Ya funciona en mi máquina… Y en producción, ¿qué?
Microservices: Ya funciona en mi máquina… Y en producción, ¿qué?Microservices: Ya funciona en mi máquina… Y en producción, ¿qué?
Microservices: Ya funciona en mi máquina… Y en producción, ¿qué?
 
docker.pdf
docker.pdfdocker.pdf
docker.pdf
 
docker.pdf
docker.pdfdocker.pdf
docker.pdf
 
Instalacion y uso basico de Docker.
Instalacion y uso basico de Docker.Instalacion y uso basico de Docker.
Instalacion y uso basico de Docker.
 

Último

tema-6.4-calculo-de-la-potencia-requerida-para-transporte-de-solidos-.pptx
tema-6.4-calculo-de-la-potencia-requerida-para-transporte-de-solidos-.pptxtema-6.4-calculo-de-la-potencia-requerida-para-transporte-de-solidos-.pptx
tema-6.4-calculo-de-la-potencia-requerida-para-transporte-de-solidos-.pptx
DianaSG6
 
MODULO DE MATEMATICAS BÁSICAS universidad UNAD.pdf
MODULO DE MATEMATICAS  BÁSICAS universidad UNAD.pdfMODULO DE MATEMATICAS  BÁSICAS universidad UNAD.pdf
MODULO DE MATEMATICAS BÁSICAS universidad UNAD.pdf
frankysteven
 
BOTAnica mesias orland role.pptx1 ciclo agropecuaria
BOTAnica mesias orland role.pptx1 ciclo agropecuariaBOTAnica mesias orland role.pptx1 ciclo agropecuaria
BOTAnica mesias orland role.pptx1 ciclo agropecuaria
mesiassalazarpresent
 
PETROLEO triptico para estudiantes de educacion
PETROLEO triptico para estudiantes de educacionPETROLEO triptico para estudiantes de educacion
PETROLEO triptico para estudiantes de educacion
ctrlc3
 
matematicas en la ingenieria de la construccion
matematicas en la ingenieria de la construccionmatematicas en la ingenieria de la construccion
matematicas en la ingenieria de la construccion
alberto891871
 
Mecanismos de transferencia de un generador de vapor
Mecanismos de transferencia de un generador de vaporMecanismos de transferencia de un generador de vapor
Mecanismos de transferencia de un generador de vapor
alema3825
 
Algebra, Trigonometria y Geometria Analitica.pdf
Algebra, Trigonometria y Geometria Analitica.pdfAlgebra, Trigonometria y Geometria Analitica.pdf
Algebra, Trigonometria y Geometria Analitica.pdf
frankysteven
 

Último (20)

El abecedario constituye el conjunto de grafías que son utilizadas para repre...
El abecedario constituye el conjunto de grafías que son utilizadas para repre...El abecedario constituye el conjunto de grafías que son utilizadas para repre...
El abecedario constituye el conjunto de grafías que son utilizadas para repre...
 
problemas consolidación Mecánica de suelos
problemas consolidación Mecánica de suelosproblemas consolidación Mecánica de suelos
problemas consolidación Mecánica de suelos
 
tema-6.4-calculo-de-la-potencia-requerida-para-transporte-de-solidos-.pptx
tema-6.4-calculo-de-la-potencia-requerida-para-transporte-de-solidos-.pptxtema-6.4-calculo-de-la-potencia-requerida-para-transporte-de-solidos-.pptx
tema-6.4-calculo-de-la-potencia-requerida-para-transporte-de-solidos-.pptx
 
CONTROL DE MOTORES DE CORRIENTE ALTERNA PPT
CONTROL DE MOTORES DE CORRIENTE ALTERNA  PPTCONTROL DE MOTORES DE CORRIENTE ALTERNA  PPT
CONTROL DE MOTORES DE CORRIENTE ALTERNA PPT
 
MODULO DE MATEMATICAS BÁSICAS universidad UNAD.pdf
MODULO DE MATEMATICAS  BÁSICAS universidad UNAD.pdfMODULO DE MATEMATICAS  BÁSICAS universidad UNAD.pdf
MODULO DE MATEMATICAS BÁSICAS universidad UNAD.pdf
 
BOTAnica mesias orland role.pptx1 ciclo agropecuaria
BOTAnica mesias orland role.pptx1 ciclo agropecuariaBOTAnica mesias orland role.pptx1 ciclo agropecuaria
BOTAnica mesias orland role.pptx1 ciclo agropecuaria
 
SISTEMA ARTICULADO DE CUATRO BARRAS .pdf
SISTEMA ARTICULADO DE CUATRO BARRAS .pdfSISTEMA ARTICULADO DE CUATRO BARRAS .pdf
SISTEMA ARTICULADO DE CUATRO BARRAS .pdf
 
Joseph juran aportaciones al control de la calidad
Joseph juran aportaciones al control de la calidadJoseph juran aportaciones al control de la calidad
Joseph juran aportaciones al control de la calidad
 
PETROLEO triptico para estudiantes de educacion
PETROLEO triptico para estudiantes de educacionPETROLEO triptico para estudiantes de educacion
PETROLEO triptico para estudiantes de educacion
 
matematicas en la ingenieria de la construccion
matematicas en la ingenieria de la construccionmatematicas en la ingenieria de la construccion
matematicas en la ingenieria de la construccion
 
Mecánica de fluidos 1 universidad continental
Mecánica de fluidos 1 universidad continentalMecánica de fluidos 1 universidad continental
Mecánica de fluidos 1 universidad continental
 
Mecanismos de transferencia de un generador de vapor
Mecanismos de transferencia de un generador de vaporMecanismos de transferencia de un generador de vapor
Mecanismos de transferencia de un generador de vapor
 
Diagrama de flujo "Resolución de problemas".pdf
Diagrama de flujo "Resolución de problemas".pdfDiagrama de flujo "Resolución de problemas".pdf
Diagrama de flujo "Resolución de problemas".pdf
 
Sistema de 4 barras articuladas bb_2.pdf
Sistema de 4 barras articuladas bb_2.pdfSistema de 4 barras articuladas bb_2.pdf
Sistema de 4 barras articuladas bb_2.pdf
 
LA SEÑALES ANALOGICAS Y LAS SEÑALES DIGITALES
LA SEÑALES ANALOGICAS Y LAS SEÑALES DIGITALESLA SEÑALES ANALOGICAS Y LAS SEÑALES DIGITALES
LA SEÑALES ANALOGICAS Y LAS SEÑALES DIGITALES
 
ACT MECANISMO DE 4 BARRAS ARTICULADAS.PDF
ACT MECANISMO DE 4 BARRAS ARTICULADAS.PDFACT MECANISMO DE 4 BARRAS ARTICULADAS.PDF
ACT MECANISMO DE 4 BARRAS ARTICULADAS.PDF
 
PresentaciónReto_Equipo6 Explicacion del reto de freno electromagnetico
PresentaciónReto_Equipo6 Explicacion del reto de freno electromagneticoPresentaciónReto_Equipo6 Explicacion del reto de freno electromagnetico
PresentaciónReto_Equipo6 Explicacion del reto de freno electromagnetico
 
GUIA DE SEGURIDAD PARA MAQUINAS Y HERRAMIENTAS
GUIA DE SEGURIDAD PARA MAQUINAS Y HERRAMIENTASGUIA DE SEGURIDAD PARA MAQUINAS Y HERRAMIENTAS
GUIA DE SEGURIDAD PARA MAQUINAS Y HERRAMIENTAS
 
Algebra, Trigonometria y Geometria Analitica.pdf
Algebra, Trigonometria y Geometria Analitica.pdfAlgebra, Trigonometria y Geometria Analitica.pdf
Algebra, Trigonometria y Geometria Analitica.pdf
 
DISEÑO DE LOSAS EN UNA DIRECCION (CONCRETO ARMADO II )
DISEÑO DE LOSAS EN UNA DIRECCION  (CONCRETO ARMADO II )DISEÑO DE LOSAS EN UNA DIRECCION  (CONCRETO ARMADO II )
DISEÑO DE LOSAS EN UNA DIRECCION (CONCRETO ARMADO II )
 

Docker and networking

  • 1. Docker & Networking CONTENEDORES CON DOCKER Cristian Casis Villarreal Linux System Engineer/SRE Website: cristiancasis.com
  • 2. Guía del curso Qué es Docker y su Historia Maquinas virtuales vs Docker Componentes de Docker Ventajas Comandos iniciales Imágenes Dockerfile Arquitectura Microservicios. Estilo arquitectónico. Ventajas de dockers para una arquitectura de microservicios. Cuando usar Docker Casos practicos desarrollados en el curso
  • 3. Qué es Docker Es un proyecto open source para empaquetar, transportar y ejecutar cualquier aplicación como un contenedor ligero. ●Su versión inicial se publica el 13 de Marzo de 2013 y está escrito en el lenguaje GO. ●Se trata de un nuevo modelo de virtualización que crea una capa de abstracción con el S.O. ●Un contenedor conforma el contexto de ejecución de una aplicación.
  • 5. Libcontainer (Derivado de LXC). ●Linux kernel namespaces (aislamiento del sistema de ficheros, red y procesos). ●Aislamiento de los recursos (Cpu, Memoria, etc) por medio de los cgroups. ●Copy-on-write ●Logging. Salidas de la línea de comando accesibles con el cliente docker. ●Consola interactiva. Componentes
  • 7. Comandos iniciales ●docker - lista los posibles comandos ●docker version - version del demonio y del cliente ●docker info - informacion del sistema ●docker ps - ver el estado de los contenedores que estan corriendo ●docker info - informacion del sistema ●docker run- crear un container en el sistema (docker run --name firstcontainer ubuntu ●docker rm id_container- eliminar un container ●docker stats- ver el estado de los containers
  • 8. Las imagenes Docker son plantillas (que incluyen una aplicación, los binarios y las librerias necesarias) que se utilizan para construir contenedores Docker y ejecutarlos (los contenedores ejecutarán una imagen previamente compilada) - Una imagen está formada por capa "layers" que se montan unas encima de otras. Dichas capas estan en modo lectura - La última capa se monta como lectura/escritura y da lugar al contenedor - Las capas usan el patron "copy-write" Imágenes
  • 9. Dockerfile Es un archivo de texto plano que contiene las instrucciones necesarias para automatizar la creación de una imagen que será utilizada posteriormente para la ejecución de instancias específicas FROM ubuntu:18.04 COPY . /app RUN make /app CMD python /app/app.py
  • 10. + Dockerfile Los comandos más habituales en un fichero Dockerfile son: FROM →De que imagen partimos para crear la nueva MAINTEINER →Quien mantiene el contenedor RUN →Ejecuta una instrucción en el contenedor ADD →Añade un fichero o carpeta al contenedor  ENV →Establece una variable de entorno en el contenedor  EXPOSE →Indica que se va a exponer un puerto del contenedor  ENTRYPOINT / CMD→Qué se ejecuta ( define el proceso que se va a ejecutar -> por defecto "/bin/sh -c
  • 11. Tipos de Arquitecturas Monolitica: Una arquitectura monolítica es autónoma, es decir, no depende de otros servicios externos a ella y únicamente se centra en sus propios componentes. Microservicios: la gran ventaja de una arquitectura de microservicios es que ofrece cada uno de los componentes de forma aislada, siendo más fáciles de mantener y de responder frente a distintos niveles de escalabilidad.
  • 12. Microservicios. Estilo arquitectónico. Ventajas de dockers para una arquitectura de microservicios. Los microservicios son tanto un estilo de arquitectura como un modo de programar software. Con los microservicios, las aplicaciones se dividen en sus elementos más pequeños e independientes entre sí. - APLICACIONES LISTAS PARA COMERCIALIZARSE MÁS RAPIDAMENTE - GRAN CAPACIDAD DE EXPANSION - CAPACIDAD DE RECUPERACIÓN - FACILIDAD DE IMPLEMENTACION - ACCESIBILIDAD - APLICACIONES MÁS ABIERTAS
  • 13. Cuando usar Docker - Sus beneficios - Las instancias de Docker son más ligeras: Para desplegar una app como imagen de una máquina virtual, lo más probable es que tengas que incluir un sistema operativo entero en la imagen. Con un contenedor, solo la app y unas cuantas capas de base tienen que ir dentro del contenedor - Los contenedores son muy, muy, muy consistentes: Puedes tener varios contenedores con versiones iguales del entorno y evitar problemas de versiones en diferentes entornos - Los contenedores son gratuitos y de código abierto: Docker es totalmente gratis para que cualquiera lo descargue e instale Los contenedores duplican de varias formas las ventajas frente a las maquinas virtuales