SlideShare une entreprise Scribd logo
1  sur  19
Télécharger pour lire hors ligne
1
INTRODUCTION À DOCKER
& sont dans un bateau...
MEETUP WORDPRESS RENNES
29 SEPT. 2016
Yann Nave
2
Qui suis-je
Lead dev web / depuis 11ans chez Dis-Group, Lille
Technos principales : GNU Linux, Apache, MySQL, PHP, ZendFramework, WordPress,
Javascript, jQuery
Depuis 6ans : sites d'actualités basé sur WordPress-Mu, 10 millions visites/mois
Depuis 1an : utilisation de Docker en environnement de développement
Nouveau projet : mise en place d'un stack de dev basé sur Docker, WordPress
(Bedrock), Git
twitter.com/@yannux | yannux@onbebop.net
3
Au programme
Une introduction accessible, concrète, sans trop rentrer dans la technique.
1. Docker pour qui et pour quoi
2. Côté technique
3. Exemples concrets
4. Ce qu'on n'a pas vue
5. Aller plus loin
Pas de chat, mais un chien !
4 . 1
Docker pour qui ?
Toute personne ayant un impact sur la réalisation d'un projet
de la conception à la phase de test.
Développeur / Intégrateur / Chef de projet / Admin Système &
Réseau
Pour ceux qui veullent bidouiller, tester
Pour apprendre, tout simplement
4 . 2
Docker pour quoi ?
Un environnement de développement adapté à chaque projet et identique à la
production
Peut importe son système d'exploitation de base
Effectuer facilement des tests lors de la mise à jours des composants logiciels d'un
serveur ( version de Apache / PHP /MySQL / librairie diverse etc..)
Partager facilement un envrionnement de développement.
Découvrir un langage ou applicatif sans avoir à tout installer directement sur son
système.
5 . 1
Côté technique
À l'usage : similaire à VirtualBox/VMware
Dans les 2 cas on isole des programmes de son système principale
VMware/VirtualBox permettent de créer des machines virtuelles
Docker permet de gérer des containers
Cependant...
Une machine virtuel = OS + environnement applicatif : c'est lourd
Un container = juste environnement applicatif : c'est plus léger !
À usage égale, un container Docker est plus rapide qu'une machine virtuelle
5 . 2
Côté technique - Vocabulaire
Docker utilise essentiellement :
Dockerfile
Fichier texte qui décrit comment créer une image
Image
C'est le modèle qui permettra de créer un/des container(s)
Container
C'est la "boite" qui sera exéctué par Docker pour faire fonctionner votre applicatif
Volume
Il permet de mettre les fichiers de l'application dans une autre "boite", lié au(x)
container(s)
6
Pause questions
?
7 . 1
Exemples concrets
Level 1 : Un pour tous, tous pour un !
Level 2 : Diviser pour mieux régner !
Level 3 : Crash test !
Pour ces exemples nous utiliserons docker-compose qui
permet de créer encore + facilement nos containers !
7 . 2
docker-compose ?
Outil en ligne de commande qui permet de créer
automatiquement des containers et de les lier
entre eux
Utilise un fichier texte qui décrit les containers et
leurs liaisons : docker-compose.yml
8 . 1
Level 1 : Un pour tous, tous pour un !
Les ingrédients :
1 container WordPress en version 4.4
1 container MySQL
Temps de préparation : 5minutes
8 . 2
Level 1 : Un pour tous, tous pour un !
La recette :
wordpress_v44:
image: wordpress:4.4-apache
links:
- mysql_v44
environment:
- WORDPRESS_DB_PASSWORD=password
- WORDPRESS_DB_HOST=mysql_v44:3306
ports:
- "8081:80"
mysql_v44:
image: mysql:5.7
environment:
- MYSQL_ROOT_PASSWORD=password
- MYSQL_DATABASE=wordpress
9 . 1
Level 2 : Diviser pour mieux régner !
Les ingrédients :
1 container WordPress en version 4.4
1 container MySQL
1 volume qui va contenir le dossier /wp-content de WordPress
Temps de préparation : 5minutes
9 . 2
Level 2 : Diviser pour mieux régner !
La recette :
wordpress_v44volume:
image: wordpress:4.4-apache
links:
- mysql_v44volume
environment:
- WORDPRESS_DB_PASSWORD=password
- WORDPRESS_DB_HOST=mysql_v44volume:3306
ports:
- "8082:80"
working_dir: /var/www/html
volumes:
- ./data/wordpress/wp-content/:/var/www/html/wp-content
mysql_v44volume:
image: mysql:5.7
environment:
- MYSQL_ROOT_PASSWORD=password
- MYSQL_DATABASE=wordpress
10 . 1
Level 3 : Crash test !
Les ingrédients :
1 container WordPress en version 4.6
1 container MySQL
Notre précédent volume qui contient déjà le dossier /wp-content de WordPress
Temps de préparation : 5minutes
10 . 2
Level 3 : Crash test !
La recette :
wordpress_v46volume:
image: wordpress:4.6-apache
links:
- mysql_v46volume
environment:
- WORDPRESS_DB_PASSWORD=password
- WORDPRESS_DB_HOST=mysql_v46volume:3306
ports:
- "8083:80"
working_dir: /var/www/html
volumes:
- ../LEVEL2/data/wordpress/wp-content/:/var/www/html/wp-content
mysql_v46volume:
image: mysql:5.7
environment:
- MYSQL_ROOT_PASSWORD=password
- MYSQL_DATABASE=wordpress
11
Ce qu'on a pas vue
Installer Docker sur Windows, Mac OS, GNU Linux /
Docker Hub : pour trouver des images existantes
Tous les outils trop bien (Kitematic, docker-ui, etc...)
Sauvegarder, partager, restaurer facilement un container ou une image
Créer ses images avec un Dockerfile
12
Pour aller plus loin
Un petit atelier + technique WordPress Rennes ?
Rennes DevOps : http://rennesdevops.fr (+ meetup)
Un dossier de présentation complet :
https://www.guillaume-leduc.fr/docker-comme-
solution-de-virtualisation-theorie.html
Google / Qwant / DuckDuckGo ;)
13
Merci de votre attention
Des questions ?

Contenu connexe

Tendances

Introduction à Docker et Gaudi
Introduction à Docker et GaudiIntroduction à Docker et Gaudi
Introduction à Docker et GaudiEmmanuel Quentin
 
Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...
Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...
Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...Jérôme Petazzoni
 
Oxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassinOxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassinLudovic Piot
 
Docker Tours Meetup #1 - Introduction à Docker
Docker Tours Meetup #1 - Introduction à DockerDocker Tours Meetup #1 - Introduction à Docker
Docker Tours Meetup #1 - Introduction à DockerThibaut Marmin
 
NightClazz Docker Découverte
NightClazz Docker Découverte NightClazz Docker Découverte
NightClazz Docker Découverte Zenika
 
Docker avec Rancher, du dev à la prod - Makazi au devopsdday 2016
Docker avec Rancher, du dev à la prod - Makazi au devopsdday 2016Docker avec Rancher, du dev à la prod - Makazi au devopsdday 2016
Docker avec Rancher, du dev à la prod - Makazi au devopsdday 2016Alexis Ducastel
 
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
 
Docker nice meetup #1 construire, déployer et exécuter vos applications, ...
Docker nice meetup #1   construire, déployer et exécuter vos applications, ...Docker nice meetup #1   construire, déployer et exécuter vos applications, ...
Docker nice meetup #1 construire, déployer et exécuter vos applications, ...adri1s
 
Docker ! De la découverte à la mise en production / Digital apéro [19/03/2015]
Docker ! De la découverte à la mise en production / Digital apéro [19/03/2015]Docker ! De la découverte à la mise en production / Digital apéro [19/03/2015]
Docker ! De la découverte à la mise en production / Digital apéro [19/03/2015]Silicon Comté
 
Alter Way's digitalks - Docker : des conteneurs pour tout faire ?
Alter Way's digitalks - Docker  : des conteneurs pour tout faire ?Alter Way's digitalks - Docker  : des conteneurs pour tout faire ?
Alter Way's digitalks - Docker : des conteneurs pour tout faire ?ALTER WAY
 
Gérer son environnement de développement avec Docker
Gérer son environnement de développement avec DockerGérer son environnement de développement avec Docker
Gérer son environnement de développement avec DockerJulien Dubois
 
Varnish & blue/green deployments
Varnish & blue/green deploymentsVarnish & blue/green deployments
Varnish & blue/green deploymentsOxalide
 
CI, CD, pipelines, conteneurs : la cohabitation est elle possible ?
CI, CD, pipelines, conteneurs : la cohabitation est elle possible ?CI, CD, pipelines, conteneurs : la cohabitation est elle possible ?
CI, CD, pipelines, conteneurs : la cohabitation est elle possible ?Membré Guillaume
 
A la découverte de docker
A la découverte de dockerA la découverte de docker
A la découverte de dockerjean pasqualini
 
Docker en Production (Docker Paris)
Docker en Production (Docker Paris)Docker en Production (Docker Paris)
Docker en Production (Docker Paris)Jérôme Petazzoni
 
Midi technique - présentation docker
Midi technique - présentation dockerMidi technique - présentation docker
Midi technique - présentation dockerOlivier Eeckhoutte
 

Tendances (20)

Introduction à Docker et Gaudi
Introduction à Docker et GaudiIntroduction à Docker et Gaudi
Introduction à Docker et Gaudi
 
Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...
Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...
Docker : quels enjeux pour le stockage et réseau ? Paris Open Source Summit ...
 
Oxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassinOxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassin
 
Docker Tours Meetup #1 - Introduction à Docker
Docker Tours Meetup #1 - Introduction à DockerDocker Tours Meetup #1 - Introduction à Docker
Docker Tours Meetup #1 - Introduction à Docker
 
Livre blanc docker
Livre blanc docker Livre blanc docker
Livre blanc docker
 
NightClazz Docker Découverte
NightClazz Docker Découverte NightClazz Docker Découverte
NightClazz Docker Découverte
 
Docker - YaJUG
Docker  - YaJUGDocker  - YaJUG
Docker - YaJUG
 
Docker avec Rancher, du dev à la prod - Makazi au devopsdday 2016
Docker avec Rancher, du dev à la prod - Makazi au devopsdday 2016Docker avec Rancher, du dev à la prod - Makazi au devopsdday 2016
Docker avec Rancher, du dev à la prod - Makazi au devopsdday 2016
 
Docker le buzz est il justifié ?
Docker le buzz est il justifié ? Docker le buzz est il justifié ?
Docker le buzz est il justifié ?
 
Docker nice meetup #1 construire, déployer et exécuter vos applications, ...
Docker nice meetup #1   construire, déployer et exécuter vos applications, ...Docker nice meetup #1   construire, déployer et exécuter vos applications, ...
Docker nice meetup #1 construire, déployer et exécuter vos applications, ...
 
La révolution Docker
La révolution DockerLa révolution Docker
La révolution Docker
 
Docker ! De la découverte à la mise en production / Digital apéro [19/03/2015]
Docker ! De la découverte à la mise en production / Digital apéro [19/03/2015]Docker ! De la découverte à la mise en production / Digital apéro [19/03/2015]
Docker ! De la découverte à la mise en production / Digital apéro [19/03/2015]
 
Alter Way's digitalks - Docker : des conteneurs pour tout faire ?
Alter Way's digitalks - Docker  : des conteneurs pour tout faire ?Alter Way's digitalks - Docker  : des conteneurs pour tout faire ?
Alter Way's digitalks - Docker : des conteneurs pour tout faire ?
 
Gérer son environnement de développement avec Docker
Gérer son environnement de développement avec DockerGérer son environnement de développement avec Docker
Gérer son environnement de développement avec Docker
 
Varnish & blue/green deployments
Varnish & blue/green deploymentsVarnish & blue/green deployments
Varnish & blue/green deployments
 
CI, CD, pipelines, conteneurs : la cohabitation est elle possible ?
CI, CD, pipelines, conteneurs : la cohabitation est elle possible ?CI, CD, pipelines, conteneurs : la cohabitation est elle possible ?
CI, CD, pipelines, conteneurs : la cohabitation est elle possible ?
 
A la découverte de docker
A la découverte de dockerA la découverte de docker
A la découverte de docker
 
Docker en Production (Docker Paris)
Docker en Production (Docker Paris)Docker en Production (Docker Paris)
Docker en Production (Docker Paris)
 
Docker@linuq
Docker@linuqDocker@linuq
Docker@linuq
 
Midi technique - présentation docker
Midi technique - présentation dockerMidi technique - présentation docker
Midi technique - présentation docker
 

Similaire à Introduction à docker - Meetup WP Rennes

Oxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassinOxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassinOxalide
 
docker-workshop-by-rbk.pdf jhuhiuguigugyug
docker-workshop-by-rbk.pdf jhuhiuguigugyugdocker-workshop-by-rbk.pdf jhuhiuguigugyug
docker-workshop-by-rbk.pdf jhuhiuguigugyugamine17157
 
Kubernetes et Docker sur Azure et Windows
Kubernetes et Docker sur Azure et WindowsKubernetes et Docker sur Azure et Windows
Kubernetes et Docker sur Azure et WindowsArnaud Weil
 
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
 
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
 
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
 
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
 
5390997 Support formation : Construire et administrer vos conteneurs avec Doc...
5390997 Support formation : Construire et administrer vos conteneurs avec Doc...5390997 Support formation : Construire et administrer vos conteneurs avec Doc...
5390997 Support formation : Construire et administrer vos conteneurs avec Doc...AbdellahELMAMOUN
 
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
 
Docker, mais qu’est-ce que c’est ?
Docker, mais qu’est-ce que c’est ?Docker, mais qu’est-ce que c’est ?
Docker, mais qu’est-ce que c’est ?Julien Maitrehenry
 
Spring Boot & Containers - Do's & Don'ts
Spring Boot & Containers - Do's & Don'tsSpring Boot & Containers - Do's & Don'ts
Spring Boot & Containers - Do's & Don'tsJulien Wittouck
 
Docker, ça mange quoi au printemps
Docker, ça mange quoi au printempsDocker, ça mange quoi au printemps
Docker, ça mange quoi au printempsJulien Maitrehenry
 
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
 
optimadata.nl-Comment exécuter Postgres sur Docker partie 1.pdf
optimadata.nl-Comment exécuter Postgres sur Docker partie 1.pdfoptimadata.nl-Comment exécuter Postgres sur Docker partie 1.pdf
optimadata.nl-Comment exécuter Postgres sur Docker partie 1.pdfPascal Ponzoni
 

Similaire à Introduction à docker - Meetup WP Rennes (20)

Oxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassinOxalide Workshop #4 - Docker, des tours dans le petit bassin
Oxalide Workshop #4 - Docker, des tours dans le petit bassin
 
docker-workshop-by-rbk.pdf jhuhiuguigugyug
docker-workshop-by-rbk.pdf jhuhiuguigugyugdocker-workshop-by-rbk.pdf jhuhiuguigugyug
docker-workshop-by-rbk.pdf jhuhiuguigugyug
 
docker.pdf
docker.pdfdocker.pdf
docker.pdf
 
Kubernetes et Docker sur Azure et Windows
Kubernetes et Docker sur Azure et WindowsKubernetes et Docker sur Azure et Windows
Kubernetes et Docker sur Azure et Windows
 
What is Docker
What is Docker What is Docker
What is Docker
 
Intro to docker
Intro to dockerIntro to docker
Intro to docker
 
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
 
Vagrant - Concept
Vagrant - ConceptVagrant - Concept
Vagrant - Concept
 
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
 
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
 
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
 
5390997 Support formation : Construire et administrer vos conteneurs avec Doc...
5390997 Support formation : Construire et administrer vos conteneurs avec Doc...5390997 Support formation : Construire et administrer vos conteneurs avec Doc...
5390997 Support formation : Construire et administrer vos conteneurs avec Doc...
 
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...
 
Docker, mais qu’est-ce que c’est ?
Docker, mais qu’est-ce que c’est ?Docker, mais qu’est-ce que c’est ?
Docker, mais qu’est-ce que c’est ?
 
Spring Boot & Containers - Do's & Don'ts
Spring Boot & Containers - Do's & Don'tsSpring Boot & Containers - Do's & Don'ts
Spring Boot & Containers - Do's & Don'ts
 
Docker, ça mange quoi au printemps
Docker, ça mange quoi au printempsDocker, ça mange quoi au printemps
Docker, ça mange quoi au printemps
 
Etude des Frameworks PHP
Etude des Frameworks PHPEtude des Frameworks PHP
Etude des Frameworks PHP
 
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
 
optimadata.nl-Comment exécuter Postgres sur Docker partie 1.pdf
optimadata.nl-Comment exécuter Postgres sur Docker partie 1.pdfoptimadata.nl-Comment exécuter Postgres sur Docker partie 1.pdf
optimadata.nl-Comment exécuter Postgres sur Docker partie 1.pdf
 

Introduction à docker - Meetup WP Rennes

  • 1. 1 INTRODUCTION À DOCKER & sont dans un bateau... MEETUP WORDPRESS RENNES 29 SEPT. 2016 Yann Nave
  • 2. 2 Qui suis-je Lead dev web / depuis 11ans chez Dis-Group, Lille Technos principales : GNU Linux, Apache, MySQL, PHP, ZendFramework, WordPress, Javascript, jQuery Depuis 6ans : sites d'actualités basé sur WordPress-Mu, 10 millions visites/mois Depuis 1an : utilisation de Docker en environnement de développement Nouveau projet : mise en place d'un stack de dev basé sur Docker, WordPress (Bedrock), Git twitter.com/@yannux | yannux@onbebop.net
  • 3. 3 Au programme Une introduction accessible, concrète, sans trop rentrer dans la technique. 1. Docker pour qui et pour quoi 2. Côté technique 3. Exemples concrets 4. Ce qu'on n'a pas vue 5. Aller plus loin Pas de chat, mais un chien !
  • 4. 4 . 1 Docker pour qui ? Toute personne ayant un impact sur la réalisation d'un projet de la conception à la phase de test. Développeur / Intégrateur / Chef de projet / Admin Système & Réseau Pour ceux qui veullent bidouiller, tester Pour apprendre, tout simplement
  • 5. 4 . 2 Docker pour quoi ? Un environnement de développement adapté à chaque projet et identique à la production Peut importe son système d'exploitation de base Effectuer facilement des tests lors de la mise à jours des composants logiciels d'un serveur ( version de Apache / PHP /MySQL / librairie diverse etc..) Partager facilement un envrionnement de développement. Découvrir un langage ou applicatif sans avoir à tout installer directement sur son système.
  • 6. 5 . 1 Côté technique À l'usage : similaire à VirtualBox/VMware Dans les 2 cas on isole des programmes de son système principale VMware/VirtualBox permettent de créer des machines virtuelles Docker permet de gérer des containers Cependant... Une machine virtuel = OS + environnement applicatif : c'est lourd Un container = juste environnement applicatif : c'est plus léger ! À usage égale, un container Docker est plus rapide qu'une machine virtuelle
  • 7. 5 . 2 Côté technique - Vocabulaire Docker utilise essentiellement : Dockerfile Fichier texte qui décrit comment créer une image Image C'est le modèle qui permettra de créer un/des container(s) Container C'est la "boite" qui sera exéctué par Docker pour faire fonctionner votre applicatif Volume Il permet de mettre les fichiers de l'application dans une autre "boite", lié au(x) container(s)
  • 9. 7 . 1 Exemples concrets Level 1 : Un pour tous, tous pour un ! Level 2 : Diviser pour mieux régner ! Level 3 : Crash test ! Pour ces exemples nous utiliserons docker-compose qui permet de créer encore + facilement nos containers !
  • 10. 7 . 2 docker-compose ? Outil en ligne de commande qui permet de créer automatiquement des containers et de les lier entre eux Utilise un fichier texte qui décrit les containers et leurs liaisons : docker-compose.yml
  • 11. 8 . 1 Level 1 : Un pour tous, tous pour un ! Les ingrédients : 1 container WordPress en version 4.4 1 container MySQL Temps de préparation : 5minutes
  • 12. 8 . 2 Level 1 : Un pour tous, tous pour un ! La recette : wordpress_v44: image: wordpress:4.4-apache links: - mysql_v44 environment: - WORDPRESS_DB_PASSWORD=password - WORDPRESS_DB_HOST=mysql_v44:3306 ports: - "8081:80" mysql_v44: image: mysql:5.7 environment: - MYSQL_ROOT_PASSWORD=password - MYSQL_DATABASE=wordpress
  • 13. 9 . 1 Level 2 : Diviser pour mieux régner ! Les ingrédients : 1 container WordPress en version 4.4 1 container MySQL 1 volume qui va contenir le dossier /wp-content de WordPress Temps de préparation : 5minutes
  • 14. 9 . 2 Level 2 : Diviser pour mieux régner ! La recette : wordpress_v44volume: image: wordpress:4.4-apache links: - mysql_v44volume environment: - WORDPRESS_DB_PASSWORD=password - WORDPRESS_DB_HOST=mysql_v44volume:3306 ports: - "8082:80" working_dir: /var/www/html volumes: - ./data/wordpress/wp-content/:/var/www/html/wp-content mysql_v44volume: image: mysql:5.7 environment: - MYSQL_ROOT_PASSWORD=password - MYSQL_DATABASE=wordpress
  • 15. 10 . 1 Level 3 : Crash test ! Les ingrédients : 1 container WordPress en version 4.6 1 container MySQL Notre précédent volume qui contient déjà le dossier /wp-content de WordPress Temps de préparation : 5minutes
  • 16. 10 . 2 Level 3 : Crash test ! La recette : wordpress_v46volume: image: wordpress:4.6-apache links: - mysql_v46volume environment: - WORDPRESS_DB_PASSWORD=password - WORDPRESS_DB_HOST=mysql_v46volume:3306 ports: - "8083:80" working_dir: /var/www/html volumes: - ../LEVEL2/data/wordpress/wp-content/:/var/www/html/wp-content mysql_v46volume: image: mysql:5.7 environment: - MYSQL_ROOT_PASSWORD=password - MYSQL_DATABASE=wordpress
  • 17. 11 Ce qu'on a pas vue Installer Docker sur Windows, Mac OS, GNU Linux / Docker Hub : pour trouver des images existantes Tous les outils trop bien (Kitematic, docker-ui, etc...) Sauvegarder, partager, restaurer facilement un container ou une image Créer ses images avec un Dockerfile
  • 18. 12 Pour aller plus loin Un petit atelier + technique WordPress Rennes ? Rennes DevOps : http://rennesdevops.fr (+ meetup) Un dossier de présentation complet : https://www.guillaume-leduc.fr/docker-comme- solution-de-virtualisation-theorie.html Google / Qwant / DuckDuckGo ;)
  • 19. 13 Merci de votre attention Des questions ?