SlideShare uma empresa Scribd logo
1 de 26
Baixar para ler offline
Contenedores 101
Contenedores algo similar a LXC
–Alguien
Para entender contenedores, hay que entender procesos.
Procesos de Linux
• Linux es un sistema operativo multiprocesamiento.

• Los procesos son tareas separadas, cada una con sus propios permisos y responsabilidades. Si
un proceso falla, no afectará otro proceso en el sistema. 

• Cada proceso individual se ejecuta en su propio espacio de dirección virtual y no es capaz de
interactuar con otro proceso, excepto a través de mecanismos seguros gestionados por el kernel.

• Utilizará el CPU del sistema para ejecutar sus instrucciones y la memoria física del sistema para
guardar sus datos. Usará archivos dentro de los sistemas de archivos y puede usar directa o
indirectamente los dispositivos físicos en el sistema. 

• Linux debe realizar un seguimiento del proceso en sí y de los recursos del sistema que tiene para
que pueda administrarlo y los demás procesos del sistema de manera justa. No sería justo para
los otros procesos en el sistema si un proceso monopolizara la mayor parte de la memoria física
del sistema o sus CPU.
CPU
• El recurso más valioso del sistema es la CPU. 

• Linux es un sistema operativo multiprocesamiento, su objetivo es tener un proceso
ejecutándose en cada CPU del sistema en todo momento, para maximizar la utilización
de la CPU. Si hay más procesos que CPU, el resto de los procesos deben esperar antes
de que una CPU quede libre hasta que puedan ejecutarse. 

• El multiprocesamiento es una idea simple; un proceso se ejecuta hasta que deba
esperar, generalmente por algún recurso del sistema; cuando tiene este recurso, puede
volver a ejecutarse.

• Cada vez que un proceso tiene que esperar, el sistema operativo le quita la CPU y lo
entrega a otro proceso. Es el planificador (scheduler) el que elige cuál es el proceso más
apropiado para ejecutar a continuación y Linux utiliza una serie de estrategias de
planificación para garantizar la equidad.
• Para que Linux pueda administrar los procesos en el sistema, cada
proceso está representado por una estructura de datos: task_struct
(tarea y proceso son términos que Linux usa indistintamente). El vector
tasks es una matriz de punteros a cada estructura de datos task_struct
en el sistema.

• Esto significa que el número máximo de procesos en el sistema está
limitado por el tamaño del vector tasks. A medida que se crean los
procesos, se asigna una nueva task_struct desde la memoria del sistema
y se agrega al vector de tareas. Para facilitar su búsqueda, el puntero
actual señala el proceso actual en ejecución.
Creación de procesos
• La llamada fork() al sistema crea un nuevo proceso al duplicar uno existente.

• El proceso que llama fork () es el padre, mientras que el nuevo proceso es
el hijo.

• El padre reanuda la ejecución y el hijo comienza la ejecución en el mismo
lugar: donde vuelve la llamada a fork().

• La llamada al sistema fork() regresa del kernel dos veces: una en el
proceso padre y otra vez en el hijo recién creado.

• fork() esta implementado por la llamada al sistema clone()
Forking
• Linux implementa fork() a través de la llamada al sistema clone() que
toma una serie de flags que especifican qué recursos deben compartir el
proceso primario y secundario.

• Las llamadas fork(), vfork() y __clone() invocan la llamada al sistema
clone() con los flags necesarios.

• La llamada al sistema clone() llama a do_fork().

• do_fork() invoca copy_process()
• copy_process() hace cosas realmente interesantes:

• Permite duplicar o compartir recursos como:

• Archivos

• Filesystems

• Espacios de direcciones de procesos

• Namespaces

• Regresa el apuntador al proceso recién creado
Linux namespaces
• Namespaces dividen los recursos del kernel de modo que un conjunto de
procesos ve un conjunto de recursos mientras que otro conjunto de
procesos ve un conjunto diferente de recursos. Ejemplos de nombres de
recursos que pueden existir en múltiples espacios, son ID de proceso,
nombres de host, ID de usuario, nombres de archivo y algunos nombres
asociados con el acceso a la red y la comunicación entre procesos.

• Linux comienza con un solo espacio de nombres de cada tipo, utilizado por
todos los procesos. Los procesos pueden crear espacios de nombres
adicionales y unir diferentes espacios de nombres.

• Los espacios de nombres son un aspecto fundamental de los contenedores
en Linux.
Tipos de Namespaces
• Mount

• Pid

• Net

• Ipc

• UTS

• User ID

• Control Group
Control Groups (cgroups)
• Limitan el uso y consumo de recursos de los procesos

• Creados en Google por Paul Menage y Rohit Seth en 2006

• En ese tiempo se llamaba “process containers”

• En 2007 se cambia el nombre a control groups

• Se incorpora en el kernel de Linux 2.6.24 en Enero de 2008. Versión 1

• Actualmente esta vigente la versión 2, que es una reescritura hecha por
Tejun Heo, introducida en la versión 4.5 en Marzo de 2016.
Paul Menage Rohit Seth Tejun Heo
LXC
• LXC proporciona virtualización a nivel de sistema operativo a través de un
entorno virtual que tiene su propio proceso y espacio de red, en lugar de
crear una máquina virtual completa. 

• LXC se basa en la funcionalidad cgroups de kernel de Linux que se lanzó
en la versión 2.6.24. También se basa en otros tipos de funcionalidad de
aislamiento de espacio de nombres, que se desarrollaron e integraron en
el núcleo principal de Linux.

• Inicialmente implementado por IBM en 2008
¿Porqué son necesarios?
Un poco de historia…
Docker Inc
• Sus implantaciones y aportes ayudaron a definir los dos principales
estándares de industria que existen sobre Contenedores (2015)

• Runtime Specification (runtime-spec)

• Image Specification (image-spec)

• Ambas especificaciones están mantenidos por la Open Containers
Iniciative (OCI)

• https://www.opencontainers.org/
Algunas implementaciones
https://katacontainers.io/
https://katacontainers.io/
Contenedores 101 Digital Ocean CDMX

Mais conteúdo relacionado

Mais procurados

2 filesystem basics
2 filesystem basics2 filesystem basics
2 filesystem basics
cyberleon95
 
Bii t03 - sistemas operarivos. windows, linux y unix
Bii t03 - sistemas operarivos. windows, linux y unixBii t03 - sistemas operarivos. windows, linux y unix
Bii t03 - sistemas operarivos. windows, linux y unix
nuria garcia
 
Yagloa alex so
Yagloa alex soYagloa alex so
Yagloa alex so
Facebook
 
Comandos GNU/Linux-Unix y programación shell.
Comandos GNU/Linux-Unix y programación shell.Comandos GNU/Linux-Unix y programación shell.
Comandos GNU/Linux-Unix y programación shell.
Alan Resendiz
 

Mais procurados (20)

2 filesystem basics
2 filesystem basics2 filesystem basics
2 filesystem basics
 
Genesis Campos
Genesis CamposGenesis Campos
Genesis Campos
 
Introducción al sistema operativo unix
Introducción al sistema operativo unixIntroducción al sistema operativo unix
Introducción al sistema operativo unix
 
Bii t03 - sistemas operarivos. windows, linux y unix
Bii t03 - sistemas operarivos. windows, linux y unixBii t03 - sistemas operarivos. windows, linux y unix
Bii t03 - sistemas operarivos. windows, linux y unix
 
Planificación linux
Planificación linuxPlanificación linux
Planificación linux
 
Linux
LinuxLinux
Linux
 
Yagloa alex so
Yagloa alex soYagloa alex so
Yagloa alex so
 
Estructura básica general del sistema unix
Estructura básica general del sistema unixEstructura básica general del sistema unix
Estructura básica general del sistema unix
 
Linux comandos 1
Linux comandos 1Linux comandos 1
Linux comandos 1
 
Proceso instalacion fedora 16
Proceso instalacion fedora 16Proceso instalacion fedora 16
Proceso instalacion fedora 16
 
Monousuarios y multiusuarios
Monousuarios y multiusuariosMonousuarios y multiusuarios
Monousuarios y multiusuarios
 
Tutorial linux
Tutorial linuxTutorial linux
Tutorial linux
 
Gestion de Archivos e interfaz del programador
Gestion de Archivos e interfaz del programadorGestion de Archivos e interfaz del programador
Gestion de Archivos e interfaz del programador
 
1
11
1
 
S.o
S.oS.o
S.o
 
Tutorial de subvesion
Tutorial de subvesionTutorial de subvesion
Tutorial de subvesion
 
Ficheros garcia y pracilio
Ficheros garcia y pracilioFicheros garcia y pracilio
Ficheros garcia y pracilio
 
Comandos GNU/Linux-Unix y programación shell.
Comandos GNU/Linux-Unix y programación shell.Comandos GNU/Linux-Unix y programación shell.
Comandos GNU/Linux-Unix y programación shell.
 
GNU/Linux-Debian
GNU/Linux-Debian GNU/Linux-Debian
GNU/Linux-Debian
 
Server nfs
Server nfsServer nfs
Server nfs
 

Semelhante a Contenedores 101 Digital Ocean CDMX

Sistema operativo
Sistema operativoSistema operativo
Sistema operativo
Hector Caro
 
Semana 10 administracion de procesos
Semana 10 administracion de procesosSemana 10 administracion de procesos
Semana 10 administracion de procesos
victdiazm
 
Manual De Instalacion Del Cluster Knoppix
Manual De Instalacion Del Cluster KnoppixManual De Instalacion Del Cluster Knoppix
Manual De Instalacion Del Cluster Knoppix
andres
 
Trabajo digital 1
Trabajo digital 1Trabajo digital 1
Trabajo digital 1
sandrairua
 
Trabajo digital 1
Trabajo digital 1Trabajo digital 1
Trabajo digital 1
sandrairua
 
Sistema Operativo Linux
Sistema Operativo LinuxSistema Operativo Linux
Sistema Operativo Linux
Diana
 
Curso de software03
Curso de software03Curso de software03
Curso de software03
enriqueaco
 

Semelhante a Contenedores 101 Digital Ocean CDMX (20)

Administración y Comando Básicos
Administración y Comando BásicosAdministración y Comando Básicos
Administración y Comando Básicos
 
Presentacion
PresentacionPresentacion
Presentacion
 
Trabajo linux
Trabajo linux Trabajo linux
Trabajo linux
 
TRABAJO SISTEMAS OPERATIVOS
TRABAJO SISTEMAS OPERATIVOSTRABAJO SISTEMAS OPERATIVOS
TRABAJO SISTEMAS OPERATIVOS
 
Taller sistemas operativos
Taller sistemas operativosTaller sistemas operativos
Taller sistemas operativos
 
Linux
LinuxLinux
Linux
 
Sistema operativo
Sistema operativoSistema operativo
Sistema operativo
 
Semana 10 administracion de procesos
Semana 10 administracion de procesosSemana 10 administracion de procesos
Semana 10 administracion de procesos
 
Atix26
Atix26Atix26
Atix26
 
Manual De Instalacion Del Cluster Knoppix
Manual De Instalacion Del Cluster KnoppixManual De Instalacion Del Cluster Knoppix
Manual De Instalacion Del Cluster Knoppix
 
Estructura de un sistema operativo
Estructura de un sistema operativoEstructura de un sistema operativo
Estructura de un sistema operativo
 
openSUSE - Evaluación del Sistema Operativo
openSUSE - Evaluación del Sistema OperativoopenSUSE - Evaluación del Sistema Operativo
openSUSE - Evaluación del Sistema Operativo
 
Trabajo digital 1
Trabajo digital 1Trabajo digital 1
Trabajo digital 1
 
Trabajo digital 1
Trabajo digital 1Trabajo digital 1
Trabajo digital 1
 
Sistema Operativo Linux
Sistema Operativo LinuxSistema Operativo Linux
Sistema Operativo Linux
 
Planificador
PlanificadorPlanificador
Planificador
 
Curso de software03
Curso de software03Curso de software03
Curso de software03
 
Portafolio de evidencias
Portafolio de evidenciasPortafolio de evidencias
Portafolio de evidencias
 
Gnu linux programacion-de-sistemas
Gnu linux programacion-de-sistemasGnu linux programacion-de-sistemas
Gnu linux programacion-de-sistemas
 
Tarea 3_individual_Nelis Rivero
Tarea 3_individual_Nelis RiveroTarea 3_individual_Nelis Rivero
Tarea 3_individual_Nelis Rivero
 

Mais de Domingo Suarez Torres

Mais de Domingo Suarez Torres (20)

Cloud Native MX Meetup - Asegurando tu Cluster de Kubernetes
Cloud Native MX Meetup - Asegurando tu Cluster de KubernetesCloud Native MX Meetup - Asegurando tu Cluster de Kubernetes
Cloud Native MX Meetup - Asegurando tu Cluster de Kubernetes
 
Java Dev Day 2019 No kuberneteen por convivir
Java Dev Day 2019  No kuberneteen por convivirJava Dev Day 2019  No kuberneteen por convivir
Java Dev Day 2019 No kuberneteen por convivir
 
Retos en la arquitectura de Microservicios
Retos en la arquitectura de MicroserviciosRetos en la arquitectura de Microservicios
Retos en la arquitectura de Microservicios
 
Java Cloud Native Hack Nights GDL
Java Cloud Native Hack Nights GDLJava Cloud Native Hack Nights GDL
Java Cloud Native Hack Nights GDL
 
meetup digital ocean kubernetes
meetup digital ocean kubernetesmeetup digital ocean kubernetes
meetup digital ocean kubernetes
 
Peru JUG Micronaut & GraalVM
Peru JUG Micronaut & GraalVMPeru JUG Micronaut & GraalVM
Peru JUG Micronaut & GraalVM
 
DevFest Lima Corriendo cargas e trabajo seguras en GKE con Istio
DevFest Lima Corriendo cargas e trabajo seguras en GKE con IstioDevFest Lima Corriendo cargas e trabajo seguras en GKE con Istio
DevFest Lima Corriendo cargas e trabajo seguras en GKE con Istio
 
Cloud Native Development in the JVM
Cloud Native Development in the JVMCloud Native Development in the JVM
Cloud Native Development in the JVM
 
Cloud Native Mexico - Introducción a Kubernetes
Cloud Native Mexico - Introducción a KubernetesCloud Native Mexico - Introducción a Kubernetes
Cloud Native Mexico - Introducción a Kubernetes
 
Meetup DigitalOcean Cloud Native architecture
Meetup DigitalOcean Cloud Native architectureMeetup DigitalOcean Cloud Native architecture
Meetup DigitalOcean Cloud Native architecture
 
Cloud Native Mexico Meetup de Marzo 2018 Service Mesh con Istio y Envoy
Cloud Native Mexico Meetup de Marzo 2018 Service Mesh con Istio y EnvoyCloud Native Mexico Meetup de Marzo 2018 Service Mesh con Istio y Envoy
Cloud Native Mexico Meetup de Marzo 2018 Service Mesh con Istio y Envoy
 
Cloud Native Mexico Meetup enero 2018 Observability
Cloud Native Mexico Meetup enero 2018 ObservabilityCloud Native Mexico Meetup enero 2018 Observability
Cloud Native Mexico Meetup enero 2018 Observability
 
Cloud Native Mexico Presentacion
Cloud Native Mexico PresentacionCloud Native Mexico Presentacion
Cloud Native Mexico Presentacion
 
gRPC: Beyond REST
gRPC: Beyond RESTgRPC: Beyond REST
gRPC: Beyond REST
 
Devops Landscape
Devops LandscapeDevops Landscape
Devops Landscape
 
Orquestación de contenedores con Kubernetes SGNext
Orquestación de contenedores con Kubernetes SGNextOrquestación de contenedores con Kubernetes SGNext
Orquestación de contenedores con Kubernetes SGNext
 
JVM Reactive Programming
JVM Reactive ProgrammingJVM Reactive Programming
JVM Reactive Programming
 
SGNext Elasticsearch
SGNext ElasticsearchSGNext Elasticsearch
SGNext Elasticsearch
 
Webinar Arquitectura de Microservicios
Webinar Arquitectura de MicroserviciosWebinar Arquitectura de Microservicios
Webinar Arquitectura de Microservicios
 
Elasticsearch JVM-MX Meetup April 2016
Elasticsearch JVM-MX Meetup April 2016Elasticsearch JVM-MX Meetup April 2016
Elasticsearch JVM-MX Meetup April 2016
 

Último

redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
nicho110
 

Último (12)

EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXI
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptx
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 

Contenedores 101 Digital Ocean CDMX

  • 2. –Alguien Para entender contenedores, hay que entender procesos.
  • 3. Procesos de Linux • Linux es un sistema operativo multiprocesamiento. • Los procesos son tareas separadas, cada una con sus propios permisos y responsabilidades. Si un proceso falla, no afectará otro proceso en el sistema. • Cada proceso individual se ejecuta en su propio espacio de dirección virtual y no es capaz de interactuar con otro proceso, excepto a través de mecanismos seguros gestionados por el kernel. • Utilizará el CPU del sistema para ejecutar sus instrucciones y la memoria física del sistema para guardar sus datos. Usará archivos dentro de los sistemas de archivos y puede usar directa o indirectamente los dispositivos físicos en el sistema. • Linux debe realizar un seguimiento del proceso en sí y de los recursos del sistema que tiene para que pueda administrarlo y los demás procesos del sistema de manera justa. No sería justo para los otros procesos en el sistema si un proceso monopolizara la mayor parte de la memoria física del sistema o sus CPU.
  • 4. CPU • El recurso más valioso del sistema es la CPU. • Linux es un sistema operativo multiprocesamiento, su objetivo es tener un proceso ejecutándose en cada CPU del sistema en todo momento, para maximizar la utilización de la CPU. Si hay más procesos que CPU, el resto de los procesos deben esperar antes de que una CPU quede libre hasta que puedan ejecutarse. • El multiprocesamiento es una idea simple; un proceso se ejecuta hasta que deba esperar, generalmente por algún recurso del sistema; cuando tiene este recurso, puede volver a ejecutarse. • Cada vez que un proceso tiene que esperar, el sistema operativo le quita la CPU y lo entrega a otro proceso. Es el planificador (scheduler) el que elige cuál es el proceso más apropiado para ejecutar a continuación y Linux utiliza una serie de estrategias de planificación para garantizar la equidad.
  • 5. • Para que Linux pueda administrar los procesos en el sistema, cada proceso está representado por una estructura de datos: task_struct (tarea y proceso son términos que Linux usa indistintamente). El vector tasks es una matriz de punteros a cada estructura de datos task_struct en el sistema. • Esto significa que el número máximo de procesos en el sistema está limitado por el tamaño del vector tasks. A medida que se crean los procesos, se asigna una nueva task_struct desde la memoria del sistema y se agrega al vector de tareas. Para facilitar su búsqueda, el puntero actual señala el proceso actual en ejecución.
  • 6.
  • 7. Creación de procesos • La llamada fork() al sistema crea un nuevo proceso al duplicar uno existente. • El proceso que llama fork () es el padre, mientras que el nuevo proceso es el hijo. • El padre reanuda la ejecución y el hijo comienza la ejecución en el mismo lugar: donde vuelve la llamada a fork(). • La llamada al sistema fork() regresa del kernel dos veces: una en el proceso padre y otra vez en el hijo recién creado. • fork() esta implementado por la llamada al sistema clone()
  • 8. Forking • Linux implementa fork() a través de la llamada al sistema clone() que toma una serie de flags que especifican qué recursos deben compartir el proceso primario y secundario. • Las llamadas fork(), vfork() y __clone() invocan la llamada al sistema clone() con los flags necesarios. • La llamada al sistema clone() llama a do_fork(). • do_fork() invoca copy_process()
  • 9. • copy_process() hace cosas realmente interesantes: • Permite duplicar o compartir recursos como: • Archivos • Filesystems • Espacios de direcciones de procesos • Namespaces • Regresa el apuntador al proceso recién creado
  • 10. Linux namespaces • Namespaces dividen los recursos del kernel de modo que un conjunto de procesos ve un conjunto de recursos mientras que otro conjunto de procesos ve un conjunto diferente de recursos. Ejemplos de nombres de recursos que pueden existir en múltiples espacios, son ID de proceso, nombres de host, ID de usuario, nombres de archivo y algunos nombres asociados con el acceso a la red y la comunicación entre procesos. • Linux comienza con un solo espacio de nombres de cada tipo, utilizado por todos los procesos. Los procesos pueden crear espacios de nombres adicionales y unir diferentes espacios de nombres. • Los espacios de nombres son un aspecto fundamental de los contenedores en Linux.
  • 11. Tipos de Namespaces • Mount • Pid • Net • Ipc • UTS • User ID • Control Group
  • 12. Control Groups (cgroups) • Limitan el uso y consumo de recursos de los procesos • Creados en Google por Paul Menage y Rohit Seth en 2006 • En ese tiempo se llamaba “process containers” • En 2007 se cambia el nombre a control groups • Se incorpora en el kernel de Linux 2.6.24 en Enero de 2008. Versión 1 • Actualmente esta vigente la versión 2, que es una reescritura hecha por Tejun Heo, introducida en la versión 4.5 en Marzo de 2016.
  • 13. Paul Menage Rohit Seth Tejun Heo
  • 14. LXC • LXC proporciona virtualización a nivel de sistema operativo a través de un entorno virtual que tiene su propio proceso y espacio de red, en lugar de crear una máquina virtual completa. • LXC se basa en la funcionalidad cgroups de kernel de Linux que se lanzó en la versión 2.6.24. También se basa en otros tipos de funcionalidad de aislamiento de espacio de nombres, que se desarrollaron e integraron en el núcleo principal de Linux. • Inicialmente implementado por IBM en 2008
  • 16. Un poco de historia…
  • 17.
  • 18.
  • 19.
  • 20. Docker Inc • Sus implantaciones y aportes ayudaron a definir los dos principales estándares de industria que existen sobre Contenedores (2015) • Runtime Specification (runtime-spec) • Image Specification (image-spec) • Ambas especificaciones están mantenidos por la Open Containers Iniciative (OCI) • https://www.opencontainers.org/
  • 21.
  • 23.
  • 24.