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.
Que ce soit pour un free-lance ou une équipe, que ce soit pour le développement et/ou la mise en production, Docker est la solution qui va simplifier la gestion de vos projets.
Durant cette session René Cotton vous propose de découvrir Docker et voir comment l’utiliser pour le développement et la production.
A propos de l’intervenant
CoFondateur et Directeur Technique de WiziShop.com, depuis plus de 10 ans je mets toute mon énergie dans la création d’outil simple et performant. Depuis maintenant 7 ans cette énergie est focalisé sur le domaine du e-commerce.
Site : http://www.wizishop.com/
Twitter : @_Re_
Docker ! De la découverte à la mise en production / Digital apéro [19/03/2015]
1.
2. Association née en février 2014 avec
pour objectif de fédérer, animer et
favoriser la filière numérique
3. Filière numérique : Créer des liens entre professionnels par
des rencontres en ligne et hors ligne (events thématiques)
Grand public : Créer les conditions d’une « culture numérique »
(service DPN, blog FrancheComTech…)
Pros/Entreprises : Susciter l’appétence pour les usages et
services numériques, puis en favoriser l’adoption (ateliers en
CCI…)
4. CoFondateur et Directeur Technique de WiziShop.com
René Cotton
mail : rene@wizishop.com
twitter : @_Re_
3800 boutiques ouvertes
90 M€ de de transactions
11 années dans la création
web dont 8 années
exclusivement dans le
ecommerce
13. Définition
« Docker est un outil qui peut
empaqueter une application et ses
dépendances dans un conteneur
virtuel, qui pourra être exécuté sur
n'importe quel serveur Linux »
14. Les limites
Seulement sur Linux (pour aujourd'hui)
Kernel 3.8+ (>= 3.10 recommandé)
AUFS (de base sur debian/ubuntu
Cgroups activé
Linux namespaces activé
15. Comment ca marche ?
Un daemon : Docker
Des images (créé en layers, portable)
Des conteneurs
16. T'es gentil mais je travaille sur
MacOS / Windows !
Vraiment ???
Boot2docker
30 Mo
Docker prêt à l'utilisation (Virtual Box)
Partage facile des fichiers
17. Comparaison
App
Bin / Lib
OS invité
Hyperviseur
OS hôte
Serveur physique
Bin / Lib
OS invité
App
Bin / Lib
OS invité
App
App
Bin / Lib
OS hôte
Serveur physique
Bin / Lib Bin / Lib
AppApp
Virtualisation Containers
18. Je peux me debarrasser des VMs ?
Non!Pas encore…
23. La communauté Docker
+ de 700 contributeurs
60 000 repositories sur Docker Hub
2 Millions de téléchargement de boot2docker
20 coeur contributeurs
24. Port / Volume / Link
Forcer un port vers un autre : -p 80:80
Exposer les ports prévu : -P
Monter un volume : -v dossier/local:dossier/conteneur
Lier deux contenaire : -link db:mysql
26. Dockerfile
FROM ubuntu:14.04
MAINTAINER René Cotton "rene@wizishop.com"
RUN apt-get update
RUN apt-get install -y nginx
RUN echo 'Je suis un container' > /usr/share/nginx/html/index.html
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]
28. Docker Compose
Creation et lancement de plusieurs contenaires
docker-compose up
web:
build: .
links:
- db
ports:
- "80:80"
db:
image: mysql
Se base sur docker-compose.yml