SlideShare uma empresa Scribd logo
1 de 28
Intro to Docker
-Abderrahmane Mechri-
Quel est le problème ?
• Beaucoup d’environements
• Beaucoup de dépendances
• Beaucoup de librairies
Solution: les machines virtuelles
• Une taille très grande
• Une perte dans les ressources
2
Objectif ?
Automatiser le déploiement d'environnements sous
forme légère, portables et auto-suffisants
3
La solution ?
4
Conteneurs ?
• LXC
• Pas de dépendances
• Isolation
5
Avantages
• Scalable
• Portable
• Meilleurs performances
• Déploiement
6
Pourquoi docker ?
7
« Docker est un outil qui
peut empaqueter une
application et ses dépendances
dans un conteneur virtuel ,
qui pourra être exécuter sur
n’importe quel serveur»
8
Conteneurs VS Vm
9
Conteneurs VS Vm
10
Comment ça marche
• Docker Daemon
• Docker Client
• Boot2Docker
11
Installation de docker sur
ubuntu
• sudo apt-get update
• sudo apt-get install curl  linux-image-extra-$(uname -r)  linux-image-extra-virtual
• sudo apt-get install apt-transport-https  ca-certificates
• curl -fsSL https://yum.dockerproject.org/gpg | sudo apt-key add –
• apt-key fingerprint 58118E89F3A912897C070ADBF76221572C52609D
• sudo add-apt-repository  "deb https://apt.dockerproject.org/repo/  ubuntu-
$(lsb_release -cs)  main"
• sudo apt-get update
• sudo apt-get -y install docker-engine
• sudo docker run hello-world
12
Terminologie
• index : répertoire public (Dépôt des images)
• image : snapshot
• conteneur : élément manipulable
13
Docker hub
Dépôt des images
14
Commande search
Rechercher une image:
15
Commande pull
Récupération d’une image:
16
Commande images
Lister les images :
17
Commande run
Lancement d’un container
18
Commande ps
Lister les conteneurs lancés :
19
Commande stop
• Arrêter un conteneur :
20
Port mapping
Associer un port du conteneur avec un port de la machine hôte :
21
Commande diff
• La différence entre l'image et le conteneur :
22
Commande commit
• Enregistre la différence entre l'image et le conteneur :
23
Commande push
Pusher une image vers le Hub
24
Commande import / export
25
Client docker
• Python (docker-py)
• Ruby (docker-client, docker-api)
• Javascript (docker.io, docker-js, dockerui)
• Java (docker-java)
26
Client docker
27
Merci pour votre
attention

28

Mais conteúdo relacionado

Mais procurados

Docker: From Zero to Hero
Docker: From Zero to HeroDocker: From Zero to Hero
Docker: From Zero to Herofazalraja
 
Docker Tours Meetup #1 - Introduction à Docker
Docker Tours Meetup #1 - Introduction à DockerDocker Tours Meetup #1 - Introduction à Docker
Docker Tours Meetup #1 - Introduction à DockerThibaut Marmin
 
Tadx - Présentation Conteneurisation
Tadx -  Présentation ConteneurisationTadx -  Présentation Conteneurisation
Tadx - Présentation ConteneurisationTADx
 
Docker - un outil pour faciliter le développement et le déploiement informatique
Docker - un outil pour faciliter le développement et le déploiement informatiqueDocker - un outil pour faciliter le développement et le déploiement informatique
Docker - un outil pour faciliter le développement et le déploiement informatiquesdenier
 
DevOps avec Ansible et Docker
DevOps avec Ansible et DockerDevOps avec Ansible et Docker
DevOps avec Ansible et DockerStephane Manciot
 
Alphorm.com Formation Docker (1/2) : Installation et Administration
Alphorm.com Formation Docker (1/2) : Installation et AdministrationAlphorm.com Formation Docker (1/2) : Installation et Administration
Alphorm.com Formation Docker (1/2) : Installation et AdministrationAlphorm
 
Introduction to Docker - VIT Campus
Introduction to Docker - VIT CampusIntroduction to Docker - VIT Campus
Introduction to Docker - VIT CampusAjeet Singh Raina
 
Docker introduction (1)
Docker introduction (1)Docker introduction (1)
Docker introduction (1)Gourav Varma
 
Docker introduction & benefits
Docker introduction & benefitsDocker introduction & benefits
Docker introduction & benefitsAmit Manwade
 
Introduction to docker
Introduction to dockerIntroduction to docker
Introduction to dockerInstruqt
 
Docker intro
Docker introDocker intro
Docker introOleg Z
 
Docker Swarm 0.2.0
Docker Swarm 0.2.0Docker Swarm 0.2.0
Docker Swarm 0.2.0Docker, Inc.
 

Mais procurados (20)

Docker
DockerDocker
Docker
 
Docker: From Zero to Hero
Docker: From Zero to HeroDocker: From Zero to Hero
Docker: From Zero to Hero
 
Docker Tours Meetup #1 - Introduction à Docker
Docker Tours Meetup #1 - Introduction à DockerDocker Tours Meetup #1 - Introduction à Docker
Docker Tours Meetup #1 - Introduction à Docker
 
Tadx - Présentation Conteneurisation
Tadx -  Présentation ConteneurisationTadx -  Présentation Conteneurisation
Tadx - Présentation Conteneurisation
 
Docker - un outil pour faciliter le développement et le déploiement informatique
Docker - un outil pour faciliter le développement et le déploiement informatiqueDocker - un outil pour faciliter le développement et le déploiement informatique
Docker - un outil pour faciliter le développement et le déploiement informatique
 
kubernetes, pourquoi et comment
kubernetes, pourquoi et commentkubernetes, pourquoi et comment
kubernetes, pourquoi et comment
 
DevOps avec Ansible et Docker
DevOps avec Ansible et DockerDevOps avec Ansible et Docker
DevOps avec Ansible et Docker
 
What is Docker
What is Docker What is Docker
What is Docker
 
DevOps 3 - Docker.pdf
DevOps 3 - Docker.pdfDevOps 3 - Docker.pdf
DevOps 3 - Docker.pdf
 
Docker in real life
Docker in real lifeDocker in real life
Docker in real life
 
Alphorm.com Formation Docker (1/2) : Installation et Administration
Alphorm.com Formation Docker (1/2) : Installation et AdministrationAlphorm.com Formation Docker (1/2) : Installation et Administration
Alphorm.com Formation Docker (1/2) : Installation et Administration
 
Docker basics
Docker basicsDocker basics
Docker basics
 
Introduction to Docker - VIT Campus
Introduction to Docker - VIT CampusIntroduction to Docker - VIT Campus
Introduction to Docker - VIT Campus
 
Docker introduction (1)
Docker introduction (1)Docker introduction (1)
Docker introduction (1)
 
Dockerfile
Dockerfile Dockerfile
Dockerfile
 
Docker introduction & benefits
Docker introduction & benefitsDocker introduction & benefits
Docker introduction & benefits
 
Introduction to docker
Introduction to dockerIntroduction to docker
Introduction to docker
 
Docker intro
Docker introDocker intro
Docker intro
 
Docker Swarm 0.2.0
Docker Swarm 0.2.0Docker Swarm 0.2.0
Docker Swarm 0.2.0
 
Docker 101
Docker 101Docker 101
Docker 101
 

Destaque

containerd and CRI
containerd and CRIcontainerd and CRI
containerd and CRIDocker, Inc.
 
Intro to Docker - London meetup oct. 2013
Intro to Docker - London meetup oct. 2013Intro to Docker - London meetup oct. 2013
Intro to Docker - London meetup oct. 2013stevedomin
 
Intro to Docker (hands-on session)
Intro to Docker (hands-on session)Intro to Docker (hands-on session)
Intro to Docker (hands-on session)Nilesh ☁ Londhe
 
Docker 101 - Intro to Docker
Docker 101 - Intro to DockerDocker 101 - Intro to Docker
Docker 101 - Intro to DockerAdrian Otto
 
A Gentle Introduction To Docker And All Things Containers
A Gentle Introduction To Docker And All Things ContainersA Gentle Introduction To Docker And All Things Containers
A Gentle Introduction To Docker And All Things ContainersJérôme Petazzoni
 
Why Docker
Why DockerWhy Docker
Why DockerdotCloud
 
Driving containerd operations with gRPC
Driving containerd operations with gRPCDriving containerd operations with gRPC
Driving containerd operations with gRPCDocker, Inc.
 
Docker Online Meetup: Announcing Docker CE + EE
Docker Online Meetup: Announcing Docker CE + EEDocker Online Meetup: Announcing Docker CE + EE
Docker Online Meetup: Announcing Docker CE + EEDocker, Inc.
 

Destaque (9)

containerd and CRI
containerd and CRIcontainerd and CRI
containerd and CRI
 
Intro to Docker - London meetup oct. 2013
Intro to Docker - London meetup oct. 2013Intro to Docker - London meetup oct. 2013
Intro to Docker - London meetup oct. 2013
 
Intro to Docker (hands-on session)
Intro to Docker (hands-on session)Intro to Docker (hands-on session)
Intro to Docker (hands-on session)
 
Docker 101 - Intro to Docker
Docker 101 - Intro to DockerDocker 101 - Intro to Docker
Docker 101 - Intro to Docker
 
A Gentle Introduction To Docker And All Things Containers
A Gentle Introduction To Docker And All Things ContainersA Gentle Introduction To Docker And All Things Containers
A Gentle Introduction To Docker And All Things Containers
 
Why Docker
Why DockerWhy Docker
Why Docker
 
Docker by Example - Basics
Docker by Example - Basics Docker by Example - Basics
Docker by Example - Basics
 
Driving containerd operations with gRPC
Driving containerd operations with gRPCDriving containerd operations with gRPC
Driving containerd operations with gRPC
 
Docker Online Meetup: Announcing Docker CE + EE
Docker Online Meetup: Announcing Docker CE + EEDocker Online Meetup: Announcing Docker CE + EE
Docker Online Meetup: Announcing Docker CE + EE
 

Semelhante a Intro to docker

709469716-Docker-Intro.pptx709469716-Docker-Intro.pptx
709469716-Docker-Intro.pptx709469716-Docker-Intro.pptx709469716-Docker-Intro.pptx709469716-Docker-Intro.pptx
709469716-Docker-Intro.pptx709469716-Docker-Intro.pptxAbdellahELMAMOUN
 
Introduction à docker.io
Introduction à docker.ioIntroduction à docker.io
Introduction à docker.ioNicolas Hennion
 
Conteneurs Linux ou Windows : quelles approches pour des IT agiles ?
Conteneurs Linux ou Windows : quelles approches pour des IT agiles ?Conteneurs Linux ou Windows : quelles approches pour des IT agiles ?
Conteneurs Linux ou Windows : quelles approches pour des IT agiles ?Microsoft
 
Afterworks @Nouméa - DevOps, approche par container et Docker
Afterworks @Nouméa - DevOps, approche par container et DockerAfterworks @Nouméa - DevOps, approche par container et Docker
Afterworks @Nouméa - DevOps, approche par container et DockerJulien Chable
 
JFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-gr__ce-__-Docker.pptx
JFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-gr__ce-__-Docker.pptxJFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-gr__ce-__-Docker.pptx
JFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-gr__ce-__-Docker.pptxAnisSalhi3
 
JFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-grâce-à-Docker.pdf
JFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-grâce-à-Docker.pdfJFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-grâce-à-Docker.pdf
JFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-grâce-à-Docker.pdfqsdqsd4
 
New Microsoft PowerPoint Presentation.pptx
New Microsoft PowerPoint Presentation.pptxNew Microsoft PowerPoint Presentation.pptx
New Microsoft PowerPoint Presentation.pptxSafoineGabtni
 
Gab2015 Jean-Marie Crommen Docker sur Azure
Gab2015 Jean-Marie Crommen Docker sur AzureGab2015 Jean-Marie Crommen Docker sur Azure
Gab2015 Jean-Marie Crommen Docker sur AzureVincent Thavonekham-Pro
 
Docker du mythe à la réalité
Docker du mythe à la réalitéDocker du mythe à la réalité
Docker du mythe à la réalitéZenika
 
Docker & son ecosystème
Docker & son ecosystèmeDocker & son ecosystème
Docker & son ecosystèmeAymen EL Amri
 
Introduction à Docker et utilisation en production /Digital apéro Besançon [1...
Introduction à Docker et utilisation en production /Digital apéro Besançon [1...Introduction à Docker et utilisation en production /Digital apéro Besançon [1...
Introduction à Docker et utilisation en production /Digital apéro Besançon [1...Silicon Comté
 
Soirée du Test Logiciel - Mise en place d’une plateforme de test automatisé a...
Soirée du Test Logiciel - Mise en place d’une plateforme de test automatisé a...Soirée du Test Logiciel - Mise en place d’une plateforme de test automatisé a...
Soirée du Test Logiciel - Mise en place d’une plateforme de test automatisé a...TelecomValley
 
A la découverte de docker, 2ème partie
A la découverte de docker, 2ème partieA la découverte de docker, 2ème partie
A la découverte de docker, 2ème partieSamuel Desseaux
 
Gab17 lyon-Docker pour quoi faire - Cédric Leblond et Derue
Gab17 lyon-Docker pour quoi faire - Cédric Leblond et DerueGab17 lyon-Docker pour quoi faire - Cédric Leblond et Derue
Gab17 lyon-Docker pour quoi faire - Cédric Leblond et DerueAZUG FR
 
docker-workshop-by-rbk.pdf jhuhiuguigugyug
docker-workshop-by-rbk.pdf jhuhiuguigugyugdocker-workshop-by-rbk.pdf jhuhiuguigugyug
docker-workshop-by-rbk.pdf jhuhiuguigugyugamine17157
 
Vulgarisation de la technologie de containers Docker
Vulgarisation de la technologie de containers DockerVulgarisation de la technologie de containers Docker
Vulgarisation de la technologie de containers DockerFlorian Bobin
 
Docker le buzz est il justifié ?
Docker le buzz est il justifié ? Docker le buzz est il justifié ?
Docker le buzz est il justifié ? Romain Chalumeau
 
Geek Time Mars 2017 : Workshop Docker
Geek Time Mars 2017 : Workshop DockerGeek Time Mars 2017 : Workshop Docker
Geek Time Mars 2017 : Workshop DockerNizar GARRACHE
 

Semelhante a Intro to docker (20)

709469716-Docker-Intro.pptx709469716-Docker-Intro.pptx
709469716-Docker-Intro.pptx709469716-Docker-Intro.pptx709469716-Docker-Intro.pptx709469716-Docker-Intro.pptx
709469716-Docker-Intro.pptx709469716-Docker-Intro.pptx
 
Introduction à docker.io
Introduction à docker.ioIntroduction à docker.io
Introduction à docker.io
 
Conteneurs Linux ou Windows : quelles approches pour des IT agiles ?
Conteneurs Linux ou Windows : quelles approches pour des IT agiles ?Conteneurs Linux ou Windows : quelles approches pour des IT agiles ?
Conteneurs Linux ou Windows : quelles approches pour des IT agiles ?
 
Afterworks @Nouméa - DevOps, approche par container et Docker
Afterworks @Nouméa - DevOps, approche par container et DockerAfterworks @Nouméa - DevOps, approche par container et Docker
Afterworks @Nouméa - DevOps, approche par container et Docker
 
JFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-gr__ce-__-Docker.pptx
JFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-gr__ce-__-Docker.pptxJFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-gr__ce-__-Docker.pptx
JFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-gr__ce-__-Docker.pptx
 
JFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-grâce-à-Docker.pdf
JFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-grâce-à-Docker.pdfJFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-grâce-à-Docker.pdf
JFTL-2018-Comment-mettre-en-place-des-plateformes-de-test-grâce-à-Docker.pdf
 
New Microsoft PowerPoint Presentation.pptx
New Microsoft PowerPoint Presentation.pptxNew Microsoft PowerPoint Presentation.pptx
New Microsoft PowerPoint Presentation.pptx
 
Prise en main de Docker
Prise en main de DockerPrise en main de Docker
Prise en main de Docker
 
docker.pdf
docker.pdfdocker.pdf
docker.pdf
 
Gab2015 Jean-Marie Crommen Docker sur Azure
Gab2015 Jean-Marie Crommen Docker sur AzureGab2015 Jean-Marie Crommen Docker sur Azure
Gab2015 Jean-Marie Crommen Docker sur Azure
 
Docker du mythe à la réalité
Docker du mythe à la réalitéDocker du mythe à la réalité
Docker du mythe à la réalité
 
Docker & son ecosystème
Docker & son ecosystèmeDocker & son ecosystème
Docker & son ecosystème
 
Introduction à Docker et utilisation en production /Digital apéro Besançon [1...
Introduction à Docker et utilisation en production /Digital apéro Besançon [1...Introduction à Docker et utilisation en production /Digital apéro Besançon [1...
Introduction à Docker et utilisation en production /Digital apéro Besançon [1...
 
Soirée du Test Logiciel - Mise en place d’une plateforme de test automatisé a...
Soirée du Test Logiciel - Mise en place d’une plateforme de test automatisé a...Soirée du Test Logiciel - Mise en place d’une plateforme de test automatisé a...
Soirée du Test Logiciel - Mise en place d’une plateforme de test automatisé a...
 
A la découverte de docker, 2ème partie
A la découverte de docker, 2ème partieA la découverte de docker, 2ème partie
A la découverte de docker, 2ème partie
 
Gab17 lyon-Docker pour quoi faire - Cédric Leblond et Derue
Gab17 lyon-Docker pour quoi faire - Cédric Leblond et DerueGab17 lyon-Docker pour quoi faire - Cédric Leblond et Derue
Gab17 lyon-Docker pour quoi faire - Cédric Leblond et Derue
 
docker-workshop-by-rbk.pdf jhuhiuguigugyug
docker-workshop-by-rbk.pdf jhuhiuguigugyugdocker-workshop-by-rbk.pdf jhuhiuguigugyug
docker-workshop-by-rbk.pdf jhuhiuguigugyug
 
Vulgarisation de la technologie de containers Docker
Vulgarisation de la technologie de containers DockerVulgarisation de la technologie de containers Docker
Vulgarisation de la technologie de containers Docker
 
Docker le buzz est il justifié ?
Docker le buzz est il justifié ? Docker le buzz est il justifié ?
Docker le buzz est il justifié ?
 
Geek Time Mars 2017 : Workshop Docker
Geek Time Mars 2017 : Workshop DockerGeek Time Mars 2017 : Workshop Docker
Geek Time Mars 2017 : Workshop Docker
 

Intro to docker

Notas do Editor

  1. Avant de vous parler de Docker je vais vous raconter une histoire que tout développeur a vécu au moins une fois. Il était une fois un jeune développeur qui codait tranquillement sur son ordinateur. Il était pressé car comme tout étudiant qui se respecte il devait présenter son travail le lendemain matin. Après des heures de travail, l'application était là, et elle fonctionnait à merveille ! Le lendemain, notre codeur arriva tout fier pour sa présentation, avec son projet sur une clé usb. Il le transfère sur l'ordinateur de son pote et là, ça ne fonctionne pas ! L'application de notre jeune développeur ne fonctionne pas sur l'ordinateur de son ami à cause d'un problème d'environnement. Entre deux systèmes, il peut y avoir des différences de version sur les dépendances ou encore des bibliothèques manquantes. Ici, notre problème se limite à 2 systèmes, mais imaginez une équipe de 10 personnes avec des ordinateurs sous OS X, Linux ou même Windows, un serveur de test sous Ubuntu 12.04, et un serveur de production sous CentOS 7. S'assurer que leur application fonctionne bien sur tous ces environnements peut s'avérer être un vrai cauchemar ! Mais il existe des solutions et parmi l'une d'entre elles nous avons... Actuellement nos application on besoin de plus en plus de technologie pour bien fonctionner si on prend un cas concret , on a une application php , cette application a besoin d’une version particulière de php imagemagic , une base de données particulière un system de cache particulier un sgbd particulier .. Au totale on se trouve avec une application qui nesssite des tonnes de dépendances
  2. Ce qu’il faut savoir que la notion de conteneurs n’est pas une notion inventé par docker cette notion existe bien avant , linux a son propre system de conteneurs appelé LXC. Un conteur c’est une boite qui est isolé du système d’exploitation , dans cette boite on peut mettre toute les dépendances qu’a besoin notre application pour fonctionner. Et puisque cette boite est complétement isolé du système d’exploitation elle peut fonctionner sur n’importe quel système d’exploitation
  3. Qu'est-ce que docker dans tout ça ? Docker permet de profiter de la technologie des conteneurs en profitant d'une API simple. Les commandes sont très simples à retenir et permettent de mettre en place un système de conteneur en place rapidement grâce à un hub collaboratif qui permet à tout le monde de partager des images qui pourront ensuite être utilisées comme base pour construire ces conteneurs. Comme précisé précédemment Docker ne fonctionne pas sans le Kernel Linux donc si vous êtes sur Windows ou sur Mac vous pourrez quand même vous essayer à Docker grâce à Boot2Docker qui fournit une petite machine virtuelle prête à l'emploi directement équipée de Docker.
  4. Le mot clé de cette définition est le mot conteneurs
  5. Vous pouvez me dire ce que vous etres entrain de décrire mtn c’est un peu exactement la meme chose que les machines virtuelles , pour comprendre la différence entre les 2 je vous propose de voir ce schéma : Ici on peut voir ce qu’on a actuellement avec les machines virtuelles alors on a l’infrastructure , l’os , et ensuite les machines qui vont fonctionner sur ce système c’est comme ci on est entrain de mettre un ordinateur dasn un autre . Le probleme de cette structure si on a 10 machines virtuelle a avoir 11 système d’exploitation qui tourne sur le système et ça prend bcp de ressources . Le système de conteneurs permet d’eliminer cette partie et d’utiliser directement l’os du host l’aventage ça sera d’aleger un peu la structure
  6. Vous pouvez me dire ce que vous etes entrain de décrire mtn c’est un peu exactement la même chose que les machines virtuelles , pour comprendre la différence entre les 2 je vous propose de voir ce schéma : Ici on peut voir ce qu’on a actuellement avec les machines virtuelles alors on a l’infrastructure , l’os , et ensuite les machines qui vont fonctionner sur ce système c’est comme ci on est entrain de mettre un ordinateur dasn un autre . Le probleme de cette structure si on a 10 machines virtuelle a avoir 11 système d’exploitation qui tourne sur le système et ça prend bcp de ressources . Le système de conteneurs permet d’eliminer cette partie et d’utiliser directement l’os du host l’aventage ça sera d’aleger un peu la structure
  7. Le hub docker est un élément très important de l’écosystème Docker. Il est accessible à l’adresse http://hub.docker.com et permet le partage de conteneurs Docker prêt à l’emploi. Vous devriez donc y trouver de quoi répondre à vos besoin et, dans le cas contraire, il vous sera possible de proposer vos propres conteneurs.