En bref

Mars 2013 : projet open source (Solomon Hykes)

Github : 34000 favoris, 10000 forks

Développé en GO


Définition : "Docker est un outil qui peut empaqueter une application et ses dépendances dans un conteneur isolé, qui pourra être exécuté sur n'importe quel serveur Linux"

Principe de fonctionnement

Un conteneur ne contient pas de SE

Utilisation du noyau Linux

Isolation des ressources possibles (CPU, mémoire, I/O, connexions réseau etc.)


Avantages

Portabilité

Simplicité

Scalabilité

Maintenabilité

Performance

Architecture globale

Images : image figée intégrant un OS (basée sur Linux) et un (ou plusieurs) service(s) -> build

 Registry : catalogue d'images (publique ou privé)

 Container : créer à partir des images. Les containers sont démarrés, stoppés, déplacés, supprimés -> run

Docker engine

Un peu de concret

$> sudo docker run ubuntu /bin/echo 'Hello world'

$> docker run -t -i ubuntu /bin/bash

$> docker run -d -p 80:5000 training/webapp python app.py

Construction d'une image

$> docker run -t -i training/sinatra /bin/bash

root@0b2616b0e5a8:/# apt-get install -y mysql-server

root@0b2616b0e5a8:/# exit

$> sudo docker commit -m "Added mysql" 0b2616b0e5a8 antoine/sinatra:v2

...

$> sudo docker run -t -i antoine/sinatra:v2 /bin/bash

Construction d'une image : Dockerfile

Création d'images from scratch ou à partir d'images existantes

Fichier texte contenant des instructions

Permet de builder une image

Pour aller plus loin

docker-compose

ducp

process de déploiement

rancher

Create a presentation like this one
Share it on social medias
Share it on your own
Share it on social medias
Share it on your own

How to export your presentation

Please use Google Chrome to obtain the best export results.


How to export your presentation

Formation docker

by antoinelouiset

4 views

Public - 9/2/16, 5:41 AM