Introduction et utilisation en production
Alexandre Di Pino - 10 mars 2015
Sommaire
• Présentation
• Exemple d’utilisation
• Retour d’experience
• À venir
/me
• Alexandre Di Pino
• Ingénieur R&D @ InSimo
• Mail : alexandre.dipino@gmail.com
• Twitter : @a_dipino
Présentation
Haut niveau
• Utilisation de LXC et cgroups introduit par
le kernel 2.6.24 (Noyau 3.10 minimum)
• Tourne sur le kernel sys...
Exemple d’utilisation
Je travaille sous Windows ou MacOS ?
No problem !
• 30Mo
• Docker prêt à l’utilisation
• Utilise Virtual Box
• Partage fac...
Sous Linux
- curl -sSL https://get.docker.com/ubuntu/ | sudo sh
- On teste :
sudo docker run -i -t ubuntu bash
Exemple 1 : NGINX et MYSQL
sudo docker run -d -P --name web nginx
sudo docker run -d -e MYSQL_ROOT_PASSWORD=toto -P --name...
Exemple 2 : Ajoutons des fichiers
• -v mon/dossier/local:mon/dossier/dans/le/conteneur:ro
Règle d’or : une app
par container
Exemple 3 : Les links
docker run -e MYSQL_ROOT_PASSWORD=toto --name db -v /home/
mysql/:/var/lib/mysql/ -d mysql
docker ru...
Les volumes
• -v mon/dossier/local:mon/dossier/dans/le/conteneur
• --volumes-from web
C’est bien beau tout
ça mais je fais quoi
si aucune des
images ne
correspond à mes
besoins?
Les dockerfiles
• Construire des images à partir d’un fichier
• docker build
• Format : INSTRUCTION arguments
• FROM, MAINTA...
Les bonnes pratiques
• Ne pas installer de packages inutiles
• RUN apt-get update && apt-get install -y
Retour d’experience
Sources :
- svn
- git
Fichiers :
- Owncloud
Autres :
- Site
- Trac
- Tests
Serveur
À venir …
Docker Compose
• Création d’applications complexe
• Fichier de configuration docker-compose.yml
• Commande : docker-compose...
Docker Machine (beta)
• Création d’host sur votre ordinateur, le cloud ou votre propre data
center
• docker-machine create...
Docker Swarm (beta)
• Cluster natif pour docker
• Transforme pool d’hosts Docker en un seul virtuel
• docker pull swarm
Un conseil avant de finir
Questions ?
Introduction à Docker et utilisation en production /Digital apéro Besançon [10/03/2015]
Introduction à Docker et utilisation en production /Digital apéro Besançon [10/03/2015]
Introduction à Docker et utilisation en production /Digital apéro Besançon [10/03/2015]
Introduction à Docker et utilisation en production /Digital apéro Besançon [10/03/2015]
Introduction à Docker et utilisation en production /Digital apéro Besançon [10/03/2015]
Prochain SlideShare
Chargement dans…5
×

Introduction à Docker et utilisation en production /Digital apéro Besançon [10/03/2015]

878 vues

Publié le

Docker est une plateforme open source, pour les développeurs et les administrateurs systèmes, destinée à empaqueter une application et ses dépendances dans le but de l’exécuter sur n’importe quel serveur.

Il a pour objectif de faciliter le déploiement d’une application, d’avoir plusieurs versions de celle-ci et également d’automatiser son packaging tout en gardant un système de base propre.

Alexandre Di Pino nous présentera cette technologie et l’utilisation qu’il en fait dans un contexte de production.

A propos de l’intervenant
Titulaire d’un master en informatique à Epitech, Alexandre travaille au sein de la société InSimo, société développant un moteur physique temps réel pour la simulation médicale. Twitter : @a_dipino / LinkedIn : alexandredipino

Publié dans : Technologie
0 commentaire
3 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
878
Sur SlideShare
0
Issues des intégrations
0
Intégrations
2
Actions
Partages
0
Téléchargements
33
Commentaires
0
J’aime
3
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Introduction à Docker et utilisation en production /Digital apéro Besançon [10/03/2015]

  1. 1. Introduction et utilisation en production Alexandre Di Pino - 10 mars 2015
  2. 2. Sommaire • Présentation • Exemple d’utilisation • Retour d’experience • À venir
  3. 3. /me • Alexandre Di Pino • Ingénieur R&D @ InSimo • Mail : alexandre.dipino@gmail.com • Twitter : @a_dipino
  4. 4. Présentation
  5. 5. Haut niveau • Utilisation de LXC et cgroups introduit par le kernel 2.6.24 (Noyau 3.10 minimum) • Tourne sur le kernel système • Utilise très peu de ressource face à un VM • Utilisation de snapshots • Open source (Apache 2) Ne fonctionne que sous linux, pour le moment
  6. 6. Exemple d’utilisation
  7. 7. Je travaille sous Windows ou MacOS ? No problem ! • 30Mo • Docker prêt à l’utilisation • Utilise Virtual Box • Partage facile des fichiers entre la VM et l’hôte Boot2docker :
  8. 8. Sous Linux - curl -sSL https://get.docker.com/ubuntu/ | sudo sh - On teste : sudo docker run -i -t ubuntu bash
  9. 9. Exemple 1 : NGINX et MYSQL sudo docker run -d -P --name web nginx sudo docker run -d -e MYSQL_ROOT_PASSWORD=toto -P --name database mysql
  10. 10. Exemple 2 : Ajoutons des fichiers • -v mon/dossier/local:mon/dossier/dans/le/conteneur:ro
  11. 11. Règle d’or : une app par container
  12. 12. Exemple 3 : Les links docker run -e MYSQL_ROOT_PASSWORD=toto --name db -v /home/ mysql/:/var/lib/mysql/ -d mysql docker run --name nginx --link db:mysql -v /home/wp/:/var/www/html/ -p 80:80 -d nginx
  13. 13. Les volumes • -v mon/dossier/local:mon/dossier/dans/le/conteneur • --volumes-from web
  14. 14. C’est bien beau tout ça mais je fais quoi si aucune des images ne correspond à mes besoins?
  15. 15. Les dockerfiles • Construire des images à partir d’un fichier • docker build • Format : INSTRUCTION arguments • FROM, MAINTAINER, RUN, CMD, EXPOSE, ENV, ADD, COPY, ENTRYPOINT, VOLUME, USER, WORKDIR • Créer une « base image »
  16. 16. Les bonnes pratiques • Ne pas installer de packages inutiles • RUN apt-get update && apt-get install -y
  17. 17. Retour d’experience
  18. 18. Sources : - svn - git Fichiers : - Owncloud Autres : - Site - Trac - Tests Serveur
  19. 19. À venir …
  20. 20. Docker Compose • Création d’applications complexe • Fichier de configuration docker-compose.yml • Commande : docker-composer up
  21. 21. Docker Machine (beta) • Création d’host sur votre ordinateur, le cloud ou votre propre data center • docker-machine create --driver virtualbox dev • docker $(docker-machine config dev) run busybox • Drivers disponible pour la plupart des services clouds (AWS, Digital Ocean, Google Compute Engine, Azure, OpenStack, Rackspace ou VMWare )
  22. 22. Docker Swarm (beta) • Cluster natif pour docker • Transforme pool d’hosts Docker en un seul virtuel • docker pull swarm
  23. 23. Un conseil avant de finir
  24. 24. Questions ?

×