SlideShare une entreprise Scribd logo
1  sur  144
Formation Docker Copyright © AVAEDOS. All rights reserved
Présentée par:
LoïcTHOBOIS
Directeur technique
Fondateur de AVAEDOS
Présentation de la formation
Docker
Formation Docker Copyright © AVAEDOS. All rights reserved
 Le formateur
 Objectifs de cette formation
 Ressources de formation
 Prérequis
 Agenda
Formation Docker Copyright © AVAEDOS. All rights reserved
 Consultant / Formateur depuis 2001:
▪ Infrastructure (Microsoft, Docker)
▪ Développement (Web, .NET)
▪ Cloud (IaaS, Paas)
 Rédacteur d’articles techniques
▪ SMART DSI, Avaedos, …
▪ Livres sur IIS, Exchange 2016 et Docker surWindows
 Certifications:
▪ Microsoft : MVP, NT4 àWindows 10 etWindows Server 2012
▪ Cisco : CCNA,CCAI
▪ SUN : SCSA, SCNA.
 Contact:
▪ lthobois@live.com
Formation Docker Copyright © AVAEDOS. All rights reserved
 Avoir une vision générale de la
technologie Docker
▪ Découvrir les concepts de Docker
▪ Présenter les services proposés autour
de Docker
▪ Comprendre l’intégration de Docker
avec son écosystème
 Avoir les connaissances techniques
pour monter une infrastructure
Formation Docker Copyright © AVAEDOS. All rights reserved
 Infrastructure de formation
▪ VirtualBox
▪ Hyper-V
▪ Windows Azure
▪ …
 Supports de formation
▪ Supports de présentation
▪ Ateliers pratiques
▪ Outils
▪ …
Formation Docker Copyright © AVAEDOS. All rights reserved
 Connaissances de base des technologies réseau, notamment DNS et
les technologies de pare-feu
 Expérience d'utilisation :
▪ d’un environnement de virtualisation
▪ du système d'exploitation Windows Server / Linux
▪ des outils de gestion et d'analyse
▪ des outils de mise en réseau et de dépannage
Formation Docker Copyright © AVAEDOS. All rights reserved
1. Présentation de Docker
2. Initiation aux conteneurs
3. Construction des images avec Dockerfile
4. Administration de la registry
5. Déploiement à l’aide de Docker compose
6. Exploitation des conteneurs
7. Déploiement des hôtes à l’aide de Docker
Machine
8. Implémentation d’un cluster Swarm
9. Déploiement d’une stack de service
Formation Docker Copyright © AVAEDOS. All rights reserved
Vous avez suivi avec succès le module
Formation Docker Copyright © AVAEDOS. All rights reserved
Présentée par:
LoïcTHOBOIS
Directeur technique
Fondateur de AVAEDOS
Présentation de Docker
L’environnement de Docker
Docker
Formation Docker Copyright © AVAEDOS. All rights reserved
 La virtualisation
 Organisation du système
d’information
Formation Docker Copyright © AVAEDOS. All rights reserved
 Pourquoi la virtualisation ?
 Concrètement
 Avantages de la virtualisation
 Les technologies de virtualisation
 Exemple: le poste de travail
Formation Docker Copyright © AVAEDOS. All rights reserved
 L’origine du succès de l’informatique
▪ Participation offerte à tous
 Problèmes
▪ de compatibilité
▪ d’interopérabilité
▪ de stabilité
 Solutions
▪ Segmentation
Formation Docker Copyright © AVAEDOS. All rights reserved
 On manipule maintenant des conteneurs virtuels
 Exemples:
▪ Je veux supprimer un programme qui ne répond plus ? Je supprime le processus
(donc la mémoire et l'espace de swap du disque) liée à l'application.
▪ Je veux déplacer mon système d'exploitation car mon serveur ne démarre plus
? Je déplace la machine virtuelle (donc le disque virtuel et sa configuration) sur
un autre serveur.
Formation Docker Copyright © AVAEDOS. All rights reserved
 La virtualisation apporte deux avantages:
 Diminution duTCO
▪ Charges administratives réduites
▪ Meilleurs exploitation des ressources
▪ Moins de maintenance
 Souplesse accrues
▪ Facilité d’administration des ressources
▪ Indépendance des ressources face à l’infrastructure
Formation Docker Copyright © AVAEDOS. All rights reserved
Virtualisation
du poste de travail
Virtualisation
des applications
Virtualisation
de la présentation
Virtualisation
des serveurs
Virtualisation
de l’environnement
Virtualisation
des infrastructures
Formation Docker Copyright © AVAEDOS. All rights reserved
Matériel
OS
Données et
paramètres
Applications
Profiles
Application
Poste de travail
Système d’exploitation
Virtualisation
locale au poste
Virtualisation
distante
Focus: DiminutionTCO
Focus: Flexibilité accrue
Présentation
Poste de travail traditionnel
Présentation
Virtualisation
locale au poste
Virtualisation
distante
Formation Docker Copyright © AVAEDOS. All rights reserved
 Web Service
 SOA (Architecture orientée services)
 Architectures
▪ Sans urbanisation
▪ Avec urbanisation
 Micro-services
 Le mouvement DevOps
Formation Docker Copyright © AVAEDOS. All rights reserved
 Communication s’appuyant sur les
technologies web
 Web Service SOAP
▪ Historique
▪ Implémentation lourde via contrat
▪ Format XML
 Web Service REST
▪ Client Mobile
▪ FormatJSON
 <menu id="file" value="File">
▪ <popup>
▪ <menuitem value="New" onclick="CreateNewDoc()"
/>
▪ <menuitem value="Open" onclick="OpenDoc()" />
▪ <menuitem value="Close" onclick="CloseDoc()" />
▪ </popup>
 </menu>
 { "menu":
▪ { "id": "file", "value": "File", "popup":
▪ { "menuitem": [
▪ { "value": "New", "onclick": "CreateNewDoc()" },
▪ { "value": "Open", "onclick": "OpenDoc()" },
▪ { "value": "Close", "onclick": "CloseDoc()" }
▪ ] }
▪ }
 }
Formation Docker Copyright © AVAEDOS. All rights reserved
 Ensemble de services simples
▪ Ne pas construire l'entreprise
autour d'applications
▪ Découpage par service autonome
 Caractéristiques
▪ S’appui sur lesWeb services
▪ Objectif de blocs interchangeables
▪ Difficulté d’implémentation
▪ Frontière technique
▪ Frontière fonctionnel de responsabilité
Formation Docker Copyright © AVAEDOS. All rights reserved
 Sans urbanisation
▪ Chaque application a son propre système de compte
▪ Donc un nouveau compte doit être créé sur chaque application
▪ Chaque modification doit être synchronisé sur chacune des applications
 Avec urbanisation
▪ Un service est dédié à la gestion des comptes
▪ Chaque application vient demander les informations de compte à ce service
▪ Seul ce service doit être mis à jour à la modification d’un utilisateur
Formation Docker Copyright © AVAEDOS. All rights reserved
 Isolation au niveau de la fonctionnalité
▪ On décompose les services en plusieurs composants indépendants et faiblement
couplés
▪ Souvent spécialisés dans une seule tâche
 Les composants (microservices) sont reliés par des API REST
 Lors d’une mise à jour, seul le microservice lié est impacté
 Coût de mise en place important
▪ Modèle DDD - Domain Driven Design
Formation Docker Copyright © AVAEDOS. All rights reserved
 Permet de réunifier les développeurs avec les exploitants applicatifs et systèmes
▪ L'objectif du développeur est d'ajouter des fonctionnalités
▪ L'objectif de l'exploitant est de garantir la disponibilité du service
▪ Conflits d'intérêts entre les deux
 Le mouvement DevOps est né de la volonté de globaliser les méthodes agiles à l'ensemble des services.
 Pour atteindre ces objectifs, il est recommandé :
▪ De déployer régulièrement des applications
▪ De tester au plus tôt dans le processus de développement les régression et autres erreurs (intégration
continue, test unitaire, ...)
▪ De réaliser les tests au plus proche de la production
▪ Un cycle d'amélioration court favorisant les échanges avec les utilisateurs.
▪ Une supervision de l'exploitation et de la qualité de production représentée par des métriques et indicateurs
"clé".
Formation Docker Copyright © AVAEDOS. All rights reserved
Vous avez suivi avec succès le module
Formation Docker Copyright © AVAEDOS. All rights reserved
Présentée par:
LoïcTHOBOIS
Directeur technique
Fondateur de AVAEDOS
Présentation de Docker
Les fondamentaux de Docker
Docker
Formation Docker Copyright © AVAEDOS. All rights reserved
 Qu’est ce qu’un conteneur ?
 Un peu d’histoire sur les conteneurs
 Machines virtuelles versus
conteneurs
 Docker
 Les commandes docker
 Editions de Docker
 Implémentation sous Linux et
Windows
Formation Docker Copyright © AVAEDOS. All rights reserved
 Virtualisation du système
d’exploitation
 Perception d’environnement isolé et
indépendant
 Package déclaratif
 Unité de déploiement « universelle »
 Idéal pour le développement et les
tests
Formation Docker Copyright © AVAEDOS. All rights reserved
 Conteneur = unité de transport
intermodal
 Virtualisation de processus
▪ UNIX chroot(1979-1982)
▪ BSDJail(1998)
▪ ParallelsVirtuozzo(2001)
▪ Solaris Containers (2005)
▪ Linux LXC (2008)
▪ Docker (2013)
Formation Docker Copyright © AVAEDOS. All rights reserved
 Machines virtuelles
▪ Isolation
▪ OS/Composants dupliqués
 Conteneurs
▪ Isolation
▪ OS/Composants unifiés
Formation Docker Copyright © AVAEDOS. All rights reserved
 Créé en 2013
 Solution pour manipuler des
conteneurs
 Modèle avec architecture de type
client / serveur
▪ Client Docker
▪ Moteur Docker
▪ Communication client / serveur avec
des appels en REST
Formation Docker Copyright © AVAEDOS. All rights reserved
 Composé d’une quarantaine de commandes
▪ Décrire l’image d’une application à déployer dans un conteneur
▪ Publier l’image dans un repository (public ou privé)
▪ Interroger un repository
▪ Gérer les versions des images dans un repository(appelé Registry)
▪ Déployer des images…
Formation Docker Copyright © AVAEDOS. All rights reserved
 Client Docker (ligne de commande)
▪ disponible sur Mac OS X, Linux etWindows
▪ docker run  pour instancier un nouveau conteneur
▪ docker ps  Liste les conteneurs en cours d’exécution
▪ docker pull  pour télécharger une image
 Moteur Docker (Docker Host)
▪ Disponible uniquement sur Linux etWindows (10 et Server 2016)
▪ La machine peut être une machine virtuelle sur Azure, Hyper-V,VMWare, …
Formation Docker Copyright © AVAEDOS. All rights reserved
 Docker Enterprise Edition
▪ Basique: la plate-forme Docker pour une infrastructure certifiée, avec le support de
Docker Inc. et des conteneurs et plugins certifiés de Docker Store
▪ Standard: ajoute une gestion avancée de l'image et du conteneur, l'intégration des
utilisateurs LDAP / AD et le contrôle d'accès basé sur les rôles (Docker Datacenter)
▪ Avancé: ajoute Docker Security Scanning et surveillance continue de la vulnérabilité
 DockerCommunity Edition
▪ Edge est destiné aux utilisateurs souhaitant tester les fonctionnalités les plus
récentes et les plus importantes chaque mois
▪ Stable est publié trimestriellement et s'adresse aux utilisateurs qui veulent un rythme
de déploiement plus facile à maintenir
Formation Docker Copyright © AVAEDOS. All rights reserved
Formation Docker Copyright © AVAEDOS. All rights reserved
 Virtualisation et isolation
▪ Docker intègre la bibliothéque libcontainer qui exploite et
combine les capacités de virtualisation du noyau Linux
(namespaces, cgroups, capabilities, …)
 libcontainer
▪ Format par défaut des conteneurs.
▪ Docker supporter aussi les conteneurs LXC
▪ Extension possible dans le futur (BSD Jails,Solaris
Zones, ...)
 namespaces
▪ Fournit le mecanisme d'isolation des conteneurs.
▪ Docker créé un ensemble de namespaces pour le
conteneur
 cgroups (ou Control Groups)
▪ Groupe les process et offre une administration commune
▪ Partage les ressources matériels
Formation Docker Copyright © AVAEDOS. All rights reserved
 ConteneursWindows
▪ Windows Server 2016
▪ S’appui sur les ressources du système
 Conteneurs Hyper-V
▪ Windows 10 etWindows Server 2016
▪ S’appui sur des images Hyper-V
▪ Nano server
▪ Core server
Formation Docker Copyright © AVAEDOS. All rights reserved
Vous avez suivi avec succès le module
Formation Docker Copyright © AVAEDOS. All rights reserved
Présentée par:
LoïcTHOBOIS
Directeur technique
Fondateur de AVAEDOS
Présentation de Docker
Les fondamentaux de Docker
Docker
Formation Docker Copyright © AVAEDOS. All rights reserved
 Image Docker
 Kernel, images et conteneurs
Formation Docker Copyright © AVAEDOS. All rights reserved
 Une image est constituée d'une série
de couches appelées « layers »
 Chaque image s’appuie sur une
image de base (ex: Ubuntu) puis
intègre des composants plus avancé
comme Nginx
Formation Docker Copyright © AVAEDOS. All rights reserved
Formation Docker Copyright © AVAEDOS. All rights reserved
Vous avez suivi avec succès le module
Formation Docker Copyright © AVAEDOS. All rights reserved
Présentée par:
LoïcTHOBOIS
Directeur technique
Fondateur de AVAEDOS
Présentation de Docker
Ecosystème étendue
Docker
Formation Docker Copyright © AVAEDOS. All rights reserved
 Ecosystème Docker
 Docker & Cloud
 Docker dans le marketplace d’Azure
 Docker etVisual Studio
 Et tous les autres …
Formation Docker Copyright © AVAEDOS. All rights reserved
 Docker Engine
 Docker Client
 Dockerfile
 Docker Registry (Trusted & Hub)
 Docker Compose
 Docker Machine
 Docker Swarm
 Docker Stack
Formation Docker Copyright © AVAEDOS. All rights reserved
 Partenariat fort !
▪ Images Docker
▪ Extensions Docker
▪ Azure Containers Services
▪ Amazon EC2 Container Service
Formation Docker Copyright © AVAEDOS. All rights reserved
 DockerTrusted Registry
▪ Docker, Inc.
▪ https://hub-beta.docker.com/enterprise/
 Docker
▪ Extension Microsoft
 Docker on Ubuntu Server
▪ Canonical + Microsoft
Formation Docker Copyright © AVAEDOS. All rights reserved
 Module dédié aux développeurs
 Intégration à Azure
 http://myview.rahulnivi.net/.Net,AS
P.Net,C,EntityFramework,MVC/doc
ker/
Formation Docker Copyright © AVAEDOS. All rights reserved
 Kubernetes
▪ Mise en cluster
 Dokku
▪ Facilite les déploiements
 Jenkins
▪ Serveur d‘intégration continu
 DCOS
▪ Editeur Mesosphere
▪ Exécution, gestion et répartition de
charges des containers avec Chronos
 Marathon
▪ Init : Démarre les taches et vérifie la
disponibilités
▪ Framework pour le cluster Apache
Mesos
 Chronos
▪ Cron distribué
Formation Docker Copyright © AVAEDOS. All rights reserved
Vous avez suivi avec succès le module
Formation Docker Copyright © AVAEDOS. All rights reserved
Présentée par:
LoïcTHOBOIS
Directeur technique
Fondateur de AVAEDOS
Construction des images à l’aide de Dockerfile
Docker
Formation Docker Copyright © AVAEDOS. All rights reserved
 Présentation de Dockerfile
 Création d’images par Dockerfile
 FROM
 RUN
 ENV
 VOLUME
 COPY
 ENTRYPOINT
 CMD
 EXPOSE
Formation Docker Copyright © AVAEDOS. All rights reserved
 L’ensemble des commandes pour
construire une image, le tout
rassemblé et stocké dans un fichier
 Permet de créer un conteneur de
manière mieux contrôlé « qu’à la
main »
Formation Docker Copyright © AVAEDOS. All rights reserved
 FROM
▪ image de base (Ubuntu, Debian)
 LABEL
▪ Metadonnées de l’image
 VOLUME
▪ point de montage
 RUN
▪ commande à exécuter pour installer le
conteneur
 ENTRYPOINT
▪ commande qui s’exécute au démarrage
du conteneur (une seule sera exécutée) ;
 CMD
▪ commande qui s’exécute au démarrage
du conteneur ;
 ADD
▪ copier un fichier du répertoire courant
dans le système de fichiers du
conteneur ;
 USER
▪ utilisateur qui exécute les commandes
dans le conteneur ;
 EXPOSE
▪ port(s) à exposer à l’extérieur.
Formation Docker Copyright © AVAEDOS. All rights reserved
 Dockerfile commence toujours par la commande FROM
 Permet de définir une image de base sur laquelle sera construite la
nouvelle image
▪ Si l’image n’est pas présente, elle sera téléchargée
 FROM debian:wheezy
 FROM scratch
▪ image est construite sans partir d’une image existante
Formation Docker Copyright © AVAEDOS. All rights reserved
 Permet de lancer n’importe quel processus qui participe à l’élaboration
de l’image en cours de compilation
 RUN ["exécutable", "paramètre 1", ..., "paramètre N"]
▪ RUN ["exécutable", "paramètre 1", ..., "paramètre N"]
▪ RUN ["echo", "message"]
Formation Docker Copyright © AVAEDOS. All rights reserved
 Détermine les variables d’environnement
▪ pour l’opération de compilation du Dockerfile (RUN)
▪ dans les conteneurs qui seront lancés
 L’option --env de la commande docker run permet de passer des
variables d’environnement au moment du lancement du conteneur.
Formation Docker Copyright © AVAEDOS. All rights reserved
 Identifie les parties de l’arborescence devant être sauvegardé d’une session
à l’autre d’un conteneur
 VOLUME /var/lib/mongodb
 VOLUME /var/log/mongod
 Mappé dans un volume virtuel
▪ Au choix de l’administrateur si mappé
▪ Dans un emplacement configuré par défaut
 Suppression des volumes
▪ docker rm -vf monconteneur
Formation Docker Copyright © AVAEDOS. All rights reserved
 Récupère les fichiers locaux sur laquelle la commande docker build est
lancée
 En pratique, les fichiers qui se trouvent au même emplacement que le
fichier Dockerfile sont copiés dans le contexte, et donc chargés par la
commande build
 Il est essentiel de ne pas placer son fichier Dockerfile dans un répertoire
avec des fichiers qui ne seront pas utiles à la construction de l’image
▪ Complexe sur les images qui sont construites à partir d’un dépôt GitHub
 Un fichier nommé .dockerignore permet de déclarer les fichiers et
répertoires à ignorer au chargement de contexte (symboles * et ? autorisés
Formation Docker Copyright © AVAEDOS. All rights reserved
 Commande qui va être exécutée lors du démarrage d’un conteneur,
c’est-à-dire le processus primaire qui sera porté par ce dernier.
 ENTRYPOINT ["/entrypoint.sh"]
▪ ENTRYPOINT suivi d’un tableauJSON, le premier paramètre contient la
commande à exécuter, et les suivants les paramètres de cette commande.
 ENTRYPOINT "/entrypoint.sh"
▪ ENTRYPOINT suivi d’une chaine, un shell est démarré et le contenu de cette
chaîne lui est passé pour interprétation
Formation Docker Copyright © AVAEDOS. All rights reserved
 Passe au processus spécifié par ENTRYPOINT les paramètres par
défaut, en l’absence de paramètres explicitement spécifiés en fin de
commande docker run.
 CMD ["mongod"]
Formation Docker Copyright © AVAEDOS. All rights reserved
 EXPOSE 27017
 Expose un port réseau à l’extérieur
 Il n’est pas obligatoire de mettre en correspondance le port exposé
avec un port de la machine hôte
 docker run permet de le faire avec l’option -p
Formation Docker Copyright © AVAEDOS. All rights reserved
Vous avez suivi avec succès le module
Formation Docker Copyright © AVAEDOS. All rights reserved
Présentée par:
LoïcTHOBOIS
Directeur technique
Fondateur de AVAEDOS
Administration de la registry
Docker
Formation Docker Copyright © AVAEDOS. All rights reserved
 Docker Hub
 Docker store
 Registry privée
Formation Docker Copyright © AVAEDOS. All rights reserved
 Registry publique
▪ http://hub.docker.com/
 Système de stockage pour les images
de conteneurs
▪ évaluation / classement
▪ «automatedbuilds» pour créer
automatiquement des images Docker à
chaque commit d’un dépôt
 Envoi des packages
▪ sudo docker push <compte>/<tag image>
Formation Docker Copyright © AVAEDOS. All rights reserved
 Registry certifiée
▪ https://store.docker.com/
 Contenu
▪ Clients CE
▪ Clients EE
▪ Images
▪ Plugins
 Conteneurs payant
▪ Licence
Formation Docker Copyright © AVAEDOS. All rights reserved
 Déploiement via conteneur
▪ docker run -d --name registre -p 88:5000 registry
 Ajoutez d’un tag d’envoi vers le nouveau registre
▪ docker tag lthobois/myapp localhost:88/myapp
 Envoi vers le nouveau registre
▪ docker push localhost:88/myapp
 Téléchargement
▪ docker run -d --name conteneur localhost:88/myapp
Formation Docker Copyright © AVAEDOS. All rights reserved
Vous avez suivi avec succès le module
Formation Docker Copyright © AVAEDOS. All rights reserved
Présentée par:
LoïcTHOBOIS
Directeur technique
Fondateur de AVAEDOS
Déploiement à l’aide de Docker compose
Docker
Formation Docker Copyright © AVAEDOS. All rights reserved
 Présentation
 Installation
 Description du fichierYAML
 Utilisation
 Autres commandes utiles
Formation Docker Copyright © AVAEDOS. All rights reserved
 Un seul binaire pour démarrer et administrer de multiples conteneurs
et volumes sur un seul hôte docker
 Spécification et configuration dans un fichier
▪ docker-compose.yml
 Déplace les longues commandes docker run vers le fichier YAML
▪ docker-compose up
Formation Docker Copyright © AVAEDOS. All rights reserved
 https://docs.docker.com/compose/install/
▪ Windows, MacOS X, Linux
 Via pip, apt-get
 Ou récupérer le binaire
▪ sudo curl -L
https://github.com/docker/compose/releases/download/1.19.0/docker-
compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
▪ sudo chmod +x /usr/local/bin/docker-compose
Formation Docker Copyright © AVAEDOS. All rights reserved
 https://docs.docker.com/compose/c
ompose-file/
 Version 1
▪ Mono serveur
▪ Prochainement déprécié
 Version 2
▪ Mono serveur
▪ Configuration réseau et stockage
 Version 3
▪ Cluster Swarm
 wordpress:
 image: wordpress
 links:
 - mysql
 ports:
 - "80:80"
 environment:
 -WORDPRESS_DB_NAME=wordpress
 -WORDPRESS_DB_USER=wordpress
 -WORDPRESS_DB_PASSWORD=wordpresspwd
 mysql:
 image: mysql
 volumes:
 - /home/docker/mysql:/var/lib/mysql
 environment:
 - MYSQL_ROOT_PASSWORD=wordpressdocker
 - MYSQL_DATABASE=wordpress
 - MYSQL_USER=wordpress
 - MYSQL_PASSWORD=wordpresspwd
Formation Docker Copyright © AVAEDOS. All rights reserved
 docker-compose up
▪ Build des images à partir des Dockerfile
▪ Télécharges les images à partir de la registry (hub, …)
▪ Créé et démarre les conteneurs
▪ Stream les logs
Formation Docker Copyright © AVAEDOS. All rights reserved
 docker-compose run -d
▪ Exécute le projet
 docker-compose ps
▪ Liste les conteneurs du projet
 docker-compose stop
▪ Arrête les conteneurs du projet
 docker-compose down –volumes
▪ Supprimes les conteneurs du projet
Formation Docker Copyright © AVAEDOS. All rights reserved
Vous avez suivi avec succès le module
Formation Docker Copyright © AVAEDOS. All rights reserved
Présentée par:
LoïcTHOBOIS
Directeur technique
Fondateur de AVAEDOS
Exploitation : Infrastructure réseau
Docker
Formation Docker Copyright © AVAEDOS. All rights reserved
 Mode de fonctionnement standard (bridge)
 Configuration réseau du conteneur
 Modes de fonctionnement alternatifs
 Considérations
Formation Docker Copyright © AVAEDOS. All rights reserved
 Chaque conteneur possède sa propre interface réseau
 Par défaut, Docker fonctionne en mode bridge
▪ Le moteur Docker créé une couche de virtualisation entre l’interface réseau de
la machine hôte et celle créée pour les conteneurs.
▪ Sur l’hôte une interface réseau dédiée docker0 (Souvent 172.17.0.1/16).
▪ Dans le conteneur, une interface réseau spécifique (Souvent 172.17.0.2/16).
Formation Docker Copyright © AVAEDOS. All rights reserved
 Ajout d’un hôte dns
▪ docker run --add-host avaedos:8.8.8.8 debian
▪ Uniquement pour les serveurs externes
 Spécifie un serveur dns
▪ --dns
 Change le nom de machine du conteneur
▪ --hostname
Formation Docker Copyright © AVAEDOS. All rights reserved
 Réseau isolé
▪ docker run --net none debian ping www.avaedos.com
 Réseau lié à la carte locale de l’hôte
▪ sudo docker run -d --name iplocal --net host nginx
 Mode join
▪ sudo docker run --rm --name join2 --net container:join1 ubuntu:trusty netstat -al
 Lien dynamique entre deux conteneurs
▪ sudo docker run --rm -it --link link1:serveurweb ubuntu:trusty
Formation Docker Copyright © AVAEDOS. All rights reserved
 Documentation
▪ https://docs.docker.com/engine/reference/run/
▪ https://docs.docker.com/engine/userguide/networking/
 Limites de la couche réseau existante
▪ Impossible, en utilisant Docker seul, de réaliser un lien entre deux conteneurs
portés par deux démons Docker fonctionnant sur deux machines séparées.
Formation Docker Copyright © AVAEDOS. All rights reserved
Vous avez suivi avec succès le module
Formation Docker Copyright © AVAEDOS. All rights reserved
Présentée par:
LoïcTHOBOIS
Directeur technique
Fondateur de AVAEDOS
Exploitation : Infrastructure de stockage
Docker
Formation Docker Copyright © AVAEDOS. All rights reserved
 Le problème de la persistance
 Gestion du stockage
 Plugins de volume
 Volumes orphelins
 Principe de la copie sur écriture (CoW)
 Intégration à Docker de la copie sur écriture
 Les pilotes de stockage Docker
 Quel est le meilleur pilote de stockage ?
Formation Docker Copyright © AVAEDOS. All rights reserved
 Le conteneur est l'état d'exécution d'une image ... et gère les données
 2Types de données:
▪ Ephémère: ne vive que lorsque le conteneur est en vie {storagedrivers}
▪ Persistent: pas lié au cycle de vie du conteneur et doit être sauvegardé {plugins
de volume}
 Identification des données persistantes
▪ Le mot-cléVOLUME du Dockerfile
▪ Le commutateur -v de la commande docker run
Formation Docker Copyright © AVAEDOS. All rights reserved
 docker run -v
▪ Redirection paramétrable
 docker volume ls
▪ Liste des volumes persistants
 docker inspect <id conteneur>
▪ Affiche les volumes redirigés et leurs destinations
 docker cp
▪ Permet de copier des fichiers à partir/vers un conteneur
 docker run --volumes-from <cont>[:ro]
▪ Partage de volumes entre deux conteneurs
▪ Recommandé en lecture seule
Formation Docker Copyright © AVAEDOS. All rights reserved
 https://docs.docker.com/engine/extend/legacy_plugins/
▪ Azure File Storage plugin
▪ BeeGFSVolume plugin
▪ Blockbridge plugin
▪ ContivVolume plugin
▪ Convoy plugin
▪ DigitalOcean Block Storage plugin
▪ DRBD plugin
▪ Flocker plugin
▪ …
 Infinit
▪ Rachat par Docker en décembre 2016
▪ https://infinit.sh/
Formation Docker Copyright © AVAEDOS. All rights reserved
 Suppression des volumes avec le conteneur
▪ docker rm –v <id conteneur>
 Liste des volumes orphelins
▪ docker volume ls -qf dangling=true
 Nettoyage des volumes orphelins
▪ docker volume prune
Formation Docker Copyright © AVAEDOS. All rights reserved
 Si de multiples appelants demandent des ressources initialement
impossibles à distinguer, vous pouvez leur donner des pointeurs vers la
même ressource.
 Cette fiction peut être maintenue jusqu'à ce qu'un appelant modifie sa
« copie » de la ressource.
 À ce moment-là, une copie privée est créée. Cela évite que le
changement soit visible ailleurs. Ceci se produit de manière
transparente pour les autres appelants.
 L'avantage principal est que si un appelant ne fait jamais de
modifications, la copie privée n'est jamais créée.
Formation Docker Copyright © AVAEDOS. All rights reserved
 Sans copie sur écriture
▪ Il faudrait une éternité pour lancer un conteneur
▪ Les conteneurs utiliseraient beaucoup d'espace
 Sans copie sur écriture "sur votre bureau" ...
▪ Docker ne serait pas utilisable sur votre machine
▪ Il n'y aurait pas Docker
▪ ☹
Formation Docker Copyright © AVAEDOS. All rights reserved
 Optimisation sur la copie sur écriture
 2 niveaux de gestion des données:
▪ Niveau fichier: La modification d'un fichier
entraîne la manipulation de tout le fichier
▪ Lenteur à l’écriture
▪ Niveau bloc: La modification d’un fichier
entraîne la modification du bloc contenant
cet octet
▪ Rapidité d’écrite
▪ Lenteur liée à la fragmentation
▪ Considéré comme plus rapide
 https://docs.docker.com/engine/user
guide/storagedriver/
 Driver Date Noyau
 Unionfs 2003 NO
 AUFS 2006 NO
 Overlay 2014 3.18
 DeviceMapper 2005 2.6.9
 Btrfs 2007 2.6.29
 ZFS 2013 NO
Formation Docker Copyright © AVAEDOS. All rights reserved
 AUFS:
▪ Rapide (monture ou E / S) {cache de page}.
▪ Absent du noyau principal
▪ La recopie et CoW peut être très coûteux
 Overlay FS:
▪ Accès au cache en un coup
▪ Mais pas la copie
▪ Forte consommation d'inode
▪ Vérifier le disponibilité sur les distributions
▪ Pas totalement compatible POSIX ... de
nos jours, qui s'en soucie?
 Device Mapper:
▪ Les snapshots sont des périphériques réels.
▪ La performance pourrait être un problème ... mais il
existe un conteneur partagé et un conteneur en lecture
seule.
 Btrfs:
▪ Pas de cache de page.
▪ Gestion des fragments {soit petites écritures,
fragmentation, rebalanace}.
▪ Les écritures pourraient être coûteuses.
▪ Dans certaines distros encore dans l'aperçu technique.
 ZFS:
▪ Nécessite plus de mémoire
▪ Un pilote robuste avec une longue histoire en mode
production
▪ Riche de fonctionnalités "stables"
Formation Docker Copyright © AVAEDOS. All rights reserved
Vous avez suivi avec succès le module
Formation Docker Copyright © AVAEDOS. All rights reserved
Présentée par:
LoïcTHOBOIS
Directeur technique
Fondateur de AVAEDOS
Exploitation : Bonnes pratiques et supervision
Docker
Formation Docker Copyright © AVAEDOS. All rights reserved
 Configuration du daemon docker
 Démarrage automatique
 Gestion des logs
 Restriction sur les ressources
 Sécurité
 Supervision à l’aide de Rancher
Formation Docker Copyright © AVAEDOS. All rights reserved
 Configuration au lancement
▪ $ dockerd -D --tls=true --tlscert=/var/docker/server.pem --tlskey=/var/docker/serverkey.pem -H
tcp://192.168.59.3:2376
 Fichier daemon.json
▪ {
▪ "debug": true,
▪ "tls": true,
▪ "tlscert": "/var/docker/server.pem",
▪ "tlskey": "/var/docker/serverkey.pem",
▪ "hosts": "tcp://192.168.59.3:2376"
▪ }
 Options avancées
▪ https://docs.docker.com/engine/admin/
Formation Docker Copyright © AVAEDOS. All rights reserved
 Paramètre --restart (docker run --restart <param>)
▪ no: Ne redémarre pas le conteneur.Valeur par défaut.
▪ on-failure[:max-retries] : Redémarre uniquement si le conteneur est sorti avec
un état de sortie non nul.
▪ always:Toujours redémarrer le conteneur indépendamment de l'état de sortie.
Tentera de redémarrer le conteneur indéfiniment.
▪ unless-stopped: À moins d'arrêterToujours redémarrer le conteneur, sauf si le
conteneur a été arrêté avant.
Formation Docker Copyright © AVAEDOS. All rights reserved
 Application standard via console
▪ docker logs
▪ Redirection des répertoires correspondants
 Bonnes pratiques
▪ Répertoires par défaut /log dans la configuration applicative (Dockerfile)
Formation Docker Copyright © AVAEDOS. All rights reserved
 Documentation
▪ https://docs.docker.com/engine/reference/run/
 Limiter l’usage mémoire et processeur d’un conteneur
▪ docker run -it --memory 256m --cpushares 256 ubuntu
 --cpushares
▪ Limite sur les tranches de processeur de manière relative.
▪ Tant que le conteneur est seul il utilise 100 % du CPU
 --memory
▪ La mémoire est limitée en taille absolue
Formation Docker Copyright © AVAEDOS. All rights reserved
 l’option --user sur la commande docker run permet de limiter les
privilèges dans le conteneur
Formation Docker Copyright © AVAEDOS. All rights reserved
 Plusieurs outils sur le marché
▪ https://portainer.io/
▪ https://rancher.com/
▪ Applications Chrome store
▪ …
 Fonctionnalité diverses
▪ Supervision / Administration
▪ Registry interne
▪ Gestion des orchestrateurs
▪ …
Formation Docker Copyright © AVAEDOS. All rights reserved
Vous avez suivi avec succès le module
Formation Docker Copyright © AVAEDOS. All rights reserved
Présentée par:
LoïcTHOBOIS
Directeur technique
Fondateur de AVAEDOS
Déploiement à l’aide de Docker machine
Docker
Formation Docker Copyright © AVAEDOS. All rights reserved
 Présentation
 Provisioning
 Exemples d’implémentation
 Installation
 Exemples d’utilisation
 Déploiement de Docker Swarm
Formation Docker Copyright © AVAEDOS. All rights reserved
 Déploiement et administration des hôtes de conteneur
▪ Provisions de machines virtuelles
▪ Démarrage, Arrêt, Suppression de machines virtuelles
▪ Installation / Configuration du moteur Docker
▪ Administration basic de l’hôte
▪ Provision de nœud Swarm
 Installation et configuration de docker sur plusieurs systèmes
▪ Une quinzaine de pilotes disponibles
▪ VirtualBox,VMware, Hyper-V
▪ Azure, AWS, DigitalOcean, GCE, etc
Formation Docker Copyright © AVAEDOS. All rights reserved
 Vérification / Installation de l’hyperviseur
▪ Hyper-V,VirtualBox, Azure, …
 Téléchargement du système d’exploitation hôte
▪ Boot2Docker, RancherOS, Ubuntu, Debian, …
 Déploiement de la machine virtuelle
▪ Configuration mémoire, CPU, …
 Création et déploiement d’un jeu de clé SSH
▪ Magasin local et de l’hôte déployé
 Installation du moteur Docker
▪ Choix de la version
 Intégration à un cluster SWARM
▪ Optionnel
Formation Docker Copyright © AVAEDOS. All rights reserved
 Développement local et test
▪ Remplace Boot2Docker
 Test de cluster Swarm
▪ Provision rapide de clusters locaux
 Test des versions du moteur docker
Formation Docker Copyright © AVAEDOS. All rights reserved
 https://docs.docker.com/machine/install-machine/
▪ Windows, Linux, MacOS X
 Téléchargement du binaire
▪ $ curl -L
https://github.com/docker/machine/releases/download/v0.13.0/docker-
machine-`uname -s`-`uname -m` >/tmp/docker-machine &&  sudo install
/tmp/docker-machine /usr/local/bin/docker-machine
 Autorisation de l’execution du binaire
▪ $ chmod +x docker-machine
Formation Docker Copyright © AVAEDOS. All rights reserved
 docker-machine create -d azure –azure-subscription-id=“<sub-id>” –azure-
subscription-cert=“<cert.pem>” node1
▪ Déploiement d’une machine dans le cloud
 docker-machine ls
▪ Liste des machines attachés à docker-machine
 docker-machine ssh node1
▪ Connexion à une machine en SSH
 docker-machine env mycontainer
▪ Liste des variables d’environnement d’un conteneur
Formation Docker Copyright © AVAEDOS. All rights reserved
 Création d’un token pour la découverte
 Déployer les nœuds avec les paramètres swarm
▪ --swarm, --swarm-master, --swarm-discovery, …
 docker swarm init
▪ 9fb09d6631e61568502b0e710169a7d3
 docker-machine create -d azure --swarm --swarm-discovery token://
9fb09d6631e61568502b0e710169a7d3 node1
 docker-machine create -d virtualbox --swarm --swarm-master --swarm-
discovery token:// 9fb09d6631e61568502b0e710169a7d3 node2
Formation Docker Copyright © AVAEDOS. All rights reserved
Vous avez suivi avec succès le module
Formation Docker Copyright © AVAEDOS. All rights reserved
Présentée par:
LoïcTHOBOIS
Directeur technique
Fondateur de AVAEDOS
Docker Swarm
Docker
Formation Docker Copyright © AVAEDOS. All rights reserved
 Orchestrateur : Qu’est-ce que c’est ?
 Swarm mode
 De nos jours … à Swarm
 Caractéristiques de Swarm
 Administration du cluster
 Mise en place du cluster
 Administration des services
 Défaillance d’un nœud
 Quorum MNS
 Réseau overlay
Formation Docker Copyright © AVAEDOS. All rights reserved
 Gère un pool de ressources
 Il connaît la topologie du cluster
▪ Ressources disponibles
▪ Applications déployées
 Il connait l’état de santé …
▪ …des services
▪ …de la plateforme
 C’est une évolution des outils
▪ Manuel (Scripts)  Automatisé (Conformité)  Délégué (Orchestration)
Formation Docker Copyright © AVAEDOS. All rights reserved
 Introduit avec la v1.12
▪ Remplace Docker Swarm
 Client Docker
▪ Proxy des requêtes vers docker engine
▪ Pas de GUI par défaut (portainer, rancher,
…)
▪ Implémentation facile
 Vocabulaire:
▪ Node: Docker engine membre du cluster
swarm de type Manager ouWorker
▪ Service: Ensemble de tâches
▪ Tâches: Un conteneur et sa commande
 Docker Swarm mode
▪ 3000 commits
▪ 71 contributeurs
 Développé en Go
 Géré par Docker Inc
Formation Docker Copyright © AVAEDOS. All rights reserved
Formation Docker Copyright © AVAEDOS. All rights reserved
Formation Docker Copyright © AVAEDOS. All rights reserved
 Docker REST API (>85%)
 Gestion des ressources (CPU, Mémoire, Réseau, Stockage)
 Planification avec contraintes et affinités
 Stack de service pour les architectures applicatives avancées
 TLS: Chiffrement & Authentification
Formation Docker Copyright © AVAEDOS. All rights reserved
 docker swarm
▪ Gestion du cluster
▪ init Initialize a swarm
▪ join Join a swarm as a node and/or manager
▪ join-token Manage join tokens
▪ leave Leave the swarm
▪ unlock Unlock swarm
▪ unlock-key Manage the unlock key
▪ update Update the swarm
 docker node
▪ Gestion des nœuds du cluster
▪ demote Demote one or more nodes from manager in the
swarm
▪ inspect Display detailed information on one or more nodes
▪ ls List nodes in the swarm
▪ promote Promote one or more nodes to manager in the swarm
▪ ps List tasks running on one or more nodes, defaults to
current node
▪ rm Remove one or more nodes from the swarm
▪ update Update a node
 docker service
▪ Gestion des conteneurs dans Swarm (services)
▪ create Create a new service
▪ inspect Display detailed information on one or more services
▪ logs Fetch the logs of a service or task
▪ ls List services
▪ ps List the tasks of one or more services
▪ rm Remove one or more services
▪ scale Scale one or multiple replicated services
▪ update Update a service
Formation Docker Copyright © AVAEDOS. All rights reserved
 Création du cluster:
▪ docker swarm init
 Ajouter un nœud au cluster:
▪ docker swarm join –token <token> <ip leader>:2377
 Promouvoir un nœud en tant que manager
▪ docker node promote noeud1
Formation Docker Copyright © AVAEDOS. All rights reserved
 Mémoire
▪ docker service create --limit-memory 1g …
 CPU
▪ docker service create --limit-cpu 1 …
 Ports
▪ docker service create -p 80:80 …
 Documentation
▪ https://docs.docker.com/engine/reference/commandline/service_create/
Formation Docker Copyright © AVAEDOS. All rights reserved
 Contraintes du docker info
▪ docker service create --constraint “constraint:operatingsystem==*deb*” …
▪ docker service create --constraint “constraint:storagedriver==*aufs*” …
 Contraintes du label
▪ docker service create -d --label “region==us-east”
▪ docker service create --constraint “constraint:region==us-east” …
 Contrainte de l’hote
▪ docker service create --constraint “constraint:node==ubuntu-2” …
Formation Docker Copyright © AVAEDOS. All rights reserved
 Affinités sur les conteneurs
▪ docker run --name web nginx
▪ docker service create -e “affinity:container==web” logger
 Anti-affinités sur les conteneurs
▪ docker service create --name redis-master redis
▪ docker service create --name redis-slave -e “affinity:container!=redis*” …
 Affinités sur les images
▪ docker service create -e “affinity:image==redis” redis
Formation Docker Copyright © AVAEDOS. All rights reserved
Formation Docker Copyright © AVAEDOS. All rights reserved
Formation Docker Copyright © AVAEDOS. All rights reserved
Formation Docker Copyright © AVAEDOS. All rights reserved
Formation Docker Copyright © AVAEDOS. All rights reserved
Formation Docker Copyright © AVAEDOS. All rights reserved
Formation Docker Copyright © AVAEDOS. All rights reserved
Swarm Size Majority FaultTolerance
1 1 0
2 2 0
3 2 1
4 3 1
5 3 2
6 4 2
7 4 3
8 5 3
9 5 4
 Pour éviter le split brain
▪ Majorité absolue de manager disponible
 Sauvegarde du manager
▪ /var/lib/docker/swarm
▪ Clé du cluster
 Documentation
▪ https://docs.docker.com/engine/swarm/
admin_guide/
Formation Docker Copyright © AVAEDOS. All rights reserved
 Spécifique au cluster Swarm
▪ Réseau inter-hôtes
 Création
▪ docker network create  --driver overlay  --subnet 10.0.9.0/24  my-multi-host-
network
 https://docs.docker.com/engine/userguide/networking/get-started-
overlay/
Formation Docker Copyright © AVAEDOS. All rights reserved
 Load balancer intégré sur les ports publiés
▪ Indépendance à la publication
▪ Dépendance aux défaillances matériels
 Mise à jour de publication possible
▪ docker service update 
--publish-add <PUBLISHED-PORT>:<TARGET-PORT> 
<SERVICE>
Formation Docker Copyright © AVAEDOS. All rights reserved
 Utilisation d’un reverse proxy pour la protection de l’infrastructure
Formation Docker Copyright © AVAEDOS. All rights reserved
Vous avez suivi avec succès le module
Formation Docker Copyright © AVAEDOS. All rights reserved
Présentée par:
LoïcTHOBOIS
Directeur technique
Fondateur de AVAEDOS
Déploiement d’une Stack de service
Docker
Formation Docker Copyright © AVAEDOS. All rights reserved
 Docker Stack
 Administration
 Bientôt les bundles…
Formation Docker Copyright © AVAEDOS. All rights reserved
 Nouvelle méthode de déploiement des applications multi-conteneur
dans un cluster Swarm
 Utilise un fichier docker-compose v3
▪ Instructions pour swarm
▪ https://docs.docker.com/docker-cloud/apps/stack-yaml-reference/
 Déploiement via docker stack
▪ docker stack deploy --compose-file docker-compose.yml mystack
Formation Docker Copyright © AVAEDOS. All rights reserved
 docker stack
▪ Gestion des piles de service
▪ deploy Deploy a new stack or update an existing stack
▪ ls List stacks
▪ ps List the tasks in the stack
▪ rm Remove one or more stacks
▪ services List the services in the stack
140
Formation Docker Copyright © AVAEDOS. All rights reserved
 Evolution de stack
▪ Expérimentale actuellement
 Format d’image multi-services
▪ Facilite le packaging
 Créer à partir de docker-compose
▪ docker-compose bundle
141
Formation Docker Copyright © AVAEDOS. All rights reserved
Vous avez suivi avec succès le module
Formation Docker Copyright © AVAEDOS. All rights reserved
Présentée par:
LoïcTHOBOIS
Directeur technique
Fondateur de AVAEDOS
Conclusion
Docker
Formation Docker Copyright © AVAEDOS. All rights reserved
1. Ecosystème Docker
2. La pile de technologie
1. Docker Machine
2. Conteneurs
3. Dockerfile
4. Docker compose
5. Swarm
6. Stack de service
3. Exploitation
1. Stockage
2. Réseau
Formation Docker Copyright © AVAEDOS. All rights reserved
Vous avez suivi avec succès le module

Contenu connexe

Tendances

Docker, Pierre angulaire du continuous delivery ?
Docker, Pierre angulaire du continuous delivery ?Docker, Pierre angulaire du continuous delivery ?
Docker, Pierre angulaire du continuous delivery ?Adrien Blind
 
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
 
Julien Maitrehenry - Docker, ça mange quoi au printemps
Julien Maitrehenry - Docker, ça mange quoi au printempsJulien Maitrehenry - Docker, ça mange quoi au printemps
Julien Maitrehenry - Docker, ça mange quoi au printempsWeb à Québec
 
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
 
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
 
Introduction à docker.io
Introduction à docker.ioIntroduction à docker.io
Introduction à docker.ioNicolas Hennion
 
Meetup Drupal Lyon 2016 - Environnements de dév Drupal automatisés LXC et Ans...
Meetup Drupal Lyon 2016 - Environnements de dév Drupal automatisés LXC et Ans...Meetup Drupal Lyon 2016 - Environnements de dév Drupal automatisés LXC et Ans...
Meetup Drupal Lyon 2016 - Environnements de dév Drupal automatisés LXC et Ans...Aurelien Navarre
 
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
 
Codons notre infrastructure
Codons notre infrastructureCodons notre infrastructure
Codons notre infrastructurecontinuousphp
 
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é
 
Architecture microservices avec docker
Architecture microservices avec dockerArchitecture microservices avec docker
Architecture microservices avec dockergcatt
 
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é
 
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
 

Tendances (20)

Docker, Pierre angulaire du continuous delivery ?
Docker, Pierre angulaire du continuous delivery ?Docker, Pierre angulaire du continuous delivery ?
Docker, Pierre angulaire du continuous delivery ?
 
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
 
Livre blanc docker
Livre blanc docker Livre blanc docker
Livre blanc docker
 
Julien Maitrehenry - Docker, ça mange quoi au printemps
Julien Maitrehenry - Docker, ça mange quoi au printempsJulien Maitrehenry - Docker, ça mange quoi au printemps
Julien Maitrehenry - Docker, ça mange quoi au printemps
 
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 ...
 
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 ?
 
Introduction à docker.io
Introduction à docker.ioIntroduction à docker.io
Introduction à docker.io
 
Gdg lille-intro-to-kubernetes
Gdg lille-intro-to-kubernetesGdg lille-intro-to-kubernetes
Gdg lille-intro-to-kubernetes
 
Docker@linuq
Docker@linuqDocker@linuq
Docker@linuq
 
Meetup Drupal Lyon 2016 - Environnements de dév Drupal automatisés LXC et Ans...
Meetup Drupal Lyon 2016 - Environnements de dév Drupal automatisés LXC et Ans...Meetup Drupal Lyon 2016 - Environnements de dév Drupal automatisés LXC et Ans...
Meetup Drupal Lyon 2016 - Environnements de dév Drupal automatisés LXC et Ans...
 
Docker - YaJUG
Docker  - YaJUGDocker  - YaJUG
Docker - YaJUG
 
Présentation Docker
Présentation DockerPrésentation Docker
Présentation Docker
 
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 ?
 
REX Devops Docker
REX Devops DockerREX Devops Docker
REX Devops Docker
 
Codons notre infrastructure
Codons notre infrastructureCodons notre infrastructure
Codons notre infrastructure
 
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...
 
Architecture microservices avec docker
Architecture microservices avec dockerArchitecture microservices avec docker
Architecture microservices avec 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]
 
Docker le buzz est il justifié ?
Docker le buzz est il justifié ? Docker le buzz est il justifié ?
Docker le buzz est il justifié ?
 
Intro docker
Intro dockerIntro docker
Intro docker
 

Similaire à Support formation vidéo : Construire et administrer vos conteneurs avec Docker

GAB 2017 PARIS - Docker sur Azure Container Services et DCOS par Michaël FERY...
GAB 2017 PARIS - Docker sur Azure Container Services et DCOS par Michaël FERY...GAB 2017 PARIS - Docker sur Azure Container Services et DCOS par Michaël FERY...
GAB 2017 PARIS - Docker sur Azure Container Services et DCOS par Michaël FERY...AZUG FR
 
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
 
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
 
CloudUnit le PaaS par TreeptiK
CloudUnit le PaaS par TreeptiKCloudUnit le PaaS par TreeptiK
CloudUnit le PaaS par TreeptiKAmico Fabien
 
Livraison en continue avec l'outillage devops - Jenkins, Ansible, Docker et ...
Livraison en continue avec l'outillage devops - Jenkins, Ansible, Docker et  ...Livraison en continue avec l'outillage devops - Jenkins, Ansible, Docker et  ...
Livraison en continue avec l'outillage devops - Jenkins, Ansible, Docker et ...Jasmine Conseil
 
SUSE Expert Days Paris 2018 – CaaSP
SUSE Expert Days Paris 2018 – CaaSPSUSE Expert Days Paris 2018 – CaaSP
SUSE Expert Days Paris 2018 – CaaSPSUSE
 
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
 
Configurer GitHub Actions avec Docker et DotNET 8.pdf
Configurer GitHub Actions avec Docker et DotNET 8.pdfConfigurer GitHub Actions avec Docker et DotNET 8.pdf
Configurer GitHub Actions avec Docker et DotNET 8.pdfHamida Rebai Trabelsi
 
Kalistick MixIT dev@cloud
Kalistick MixIT dev@cloudKalistick MixIT dev@cloud
Kalistick MixIT dev@cloudkalistick
 
Sw 100 fr docker conteneurisation des applications
Sw 100 fr docker conteneurisation des applicationsSw 100 fr docker conteneurisation des applications
Sw 100 fr docker conteneurisation des applicationsStephane Woillez
 
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
 
Déployer Magento2 dans MS Azure avec #zendServer et #docker ! @DarkmiraTour
Déployer Magento2 dans MS Azure avec #zendServer et #docker ! @DarkmiraTourDéployer Magento2 dans MS Azure avec #zendServer et #docker ! @DarkmiraTour
Déployer Magento2 dans MS Azure avec #zendServer et #docker ! @DarkmiraTourPierre Fay
 
La valeur de Docker pour les équipes de développement et accélérateur dans le...
La valeur de Docker pour les équipes de développement et accélérateur dans le...La valeur de Docker pour les équipes de développement et accélérateur dans le...
La valeur de Docker pour les équipes de développement et accélérateur dans le...Laurent Goujon
 
Tanzu Developer Connect - French
Tanzu Developer Connect - FrenchTanzu Developer Connect - French
Tanzu Developer Connect - FrenchVMware Tanzu
 
Tanzu Virtual Developer Connect Workshop - French
Tanzu Virtual Developer Connect Workshop - FrenchTanzu Virtual Developer Connect Workshop - French
Tanzu Virtual Developer Connect Workshop - FrenchVMware Tanzu
 
OpenStack & DevOps, l'Open Source au service du Cloud
OpenStack & DevOps, l'Open Source au service du CloudOpenStack & DevOps, l'Open Source au service du Cloud
OpenStack & DevOps, l'Open Source au service du CloudMichel-Marie Maudet
 
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
 
TechDays 2014 : retour d'expérience Kompass migration Java dans Azure
TechDays 2014 : retour d'expérience Kompass migration Java dans AzureTechDays 2014 : retour d'expérience Kompass migration Java dans Azure
TechDays 2014 : retour d'expérience Kompass migration Java dans AzureThomas Conté
 

Similaire à Support formation vidéo : Construire et administrer vos conteneurs avec Docker (20)

GAB 2017 PARIS - Docker sur Azure Container Services et DCOS par Michaël FERY...
GAB 2017 PARIS - Docker sur Azure Container Services et DCOS par Michaël FERY...GAB 2017 PARIS - Docker sur Azure Container Services et DCOS par Michaël FERY...
GAB 2017 PARIS - Docker sur Azure Container Services et DCOS par Michaël FERY...
 
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
 
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
 
CloudUnit le PaaS par TreeptiK
CloudUnit le PaaS par TreeptiKCloudUnit le PaaS par TreeptiK
CloudUnit le PaaS par TreeptiK
 
DevOps 3 - Docker.pdf
DevOps 3 - Docker.pdfDevOps 3 - Docker.pdf
DevOps 3 - Docker.pdf
 
Livraison en continue avec l'outillage devops - Jenkins, Ansible, Docker et ...
Livraison en continue avec l'outillage devops - Jenkins, Ansible, Docker et  ...Livraison en continue avec l'outillage devops - Jenkins, Ansible, Docker et  ...
Livraison en continue avec l'outillage devops - Jenkins, Ansible, Docker et ...
 
SUSE Expert Days Paris 2018 – CaaSP
SUSE Expert Days Paris 2018 – CaaSPSUSE Expert Days Paris 2018 – CaaSP
SUSE Expert Days Paris 2018 – CaaSP
 
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
 
Configurer GitHub Actions avec Docker et DotNET 8.pdf
Configurer GitHub Actions avec Docker et DotNET 8.pdfConfigurer GitHub Actions avec Docker et DotNET 8.pdf
Configurer GitHub Actions avec Docker et DotNET 8.pdf
 
Kalistick MixIT dev@cloud
Kalistick MixIT dev@cloudKalistick MixIT dev@cloud
Kalistick MixIT dev@cloud
 
Sw 100 fr docker conteneurisation des applications
Sw 100 fr docker conteneurisation des applicationsSw 100 fr docker conteneurisation des applications
Sw 100 fr docker conteneurisation des applications
 
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
 
Déployer Magento2 dans MS Azure avec #zendServer et #docker ! @DarkmiraTour
Déployer Magento2 dans MS Azure avec #zendServer et #docker ! @DarkmiraTourDéployer Magento2 dans MS Azure avec #zendServer et #docker ! @DarkmiraTour
Déployer Magento2 dans MS Azure avec #zendServer et #docker ! @DarkmiraTour
 
La valeur de Docker pour les équipes de développement et accélérateur dans le...
La valeur de Docker pour les équipes de développement et accélérateur dans le...La valeur de Docker pour les équipes de développement et accélérateur dans le...
La valeur de Docker pour les équipes de développement et accélérateur dans le...
 
Tanzu Developer Connect - French
Tanzu Developer Connect - FrenchTanzu Developer Connect - French
Tanzu Developer Connect - French
 
Tanzu Virtual Developer Connect Workshop - French
Tanzu Virtual Developer Connect Workshop - FrenchTanzu Virtual Developer Connect Workshop - French
Tanzu Virtual Developer Connect Workshop - French
 
OpenStack & DevOps, l'Open Source au service du Cloud
OpenStack & DevOps, l'Open Source au service du CloudOpenStack & DevOps, l'Open Source au service du Cloud
OpenStack & DevOps, l'Open Source au service du Cloud
 
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.pptx
docker.pptxdocker.pptx
docker.pptx
 
TechDays 2014 : retour d'expérience Kompass migration Java dans Azure
TechDays 2014 : retour d'expérience Kompass migration Java dans AzureTechDays 2014 : retour d'expérience Kompass migration Java dans Azure
TechDays 2014 : retour d'expérience Kompass migration Java dans Azure
 

Plus de SmartnSkilled

Formation : Comment rendre une réunion efficace ?
Formation : Comment rendre une réunion efficace ?Formation : Comment rendre une réunion efficace ?
Formation : Comment rendre une réunion efficace ?SmartnSkilled
 
Support cours : Les Data Sciences avec Python Langage - Partie II
Support cours : Les Data Sciences avec Python Langage - Partie IISupport cours : Les Data Sciences avec Python Langage - Partie II
Support cours : Les Data Sciences avec Python Langage - Partie IISmartnSkilled
 
Support tutoriel : Initiation à SAP ERP
Support tutoriel : Initiation à SAP ERPSupport tutoriel : Initiation à SAP ERP
Support tutoriel : Initiation à SAP ERPSmartnSkilled
 
Support formation : Construire et administrer vos conteneurs avec Docker
Support formation : Construire et administrer vos conteneurs avec DockerSupport formation : Construire et administrer vos conteneurs avec Docker
Support formation : Construire et administrer vos conteneurs avec DockerSmartnSkilled
 
Support formation : Maîtriser la comptabilité des opérations de fin d'exercice
Support formation : Maîtriser la comptabilité des opérations de fin d'exerciceSupport formation : Maîtriser la comptabilité des opérations de fin d'exercice
Support formation : Maîtriser la comptabilité des opérations de fin d'exerciceSmartnSkilled
 
Support cours : Comment rédiger un rapport ?
Support cours : Comment rédiger un rapport ?Support cours : Comment rédiger un rapport ?
Support cours : Comment rédiger un rapport ?SmartnSkilled
 
Support formation : Maîtriser les Data Sciences avec Python Language - Partie I
Support formation : Maîtriser les Data Sciences avec Python Language - Partie ISupport formation : Maîtriser les Data Sciences avec Python Language - Partie I
Support formation : Maîtriser les Data Sciences avec Python Language - Partie ISmartnSkilled
 
Support cours : Rédigez vos emails professionnels
Support cours : Rédigez vos emails professionnelsSupport cours : Rédigez vos emails professionnels
Support cours : Rédigez vos emails professionnelsSmartnSkilled
 
Support cours : Les phares du marketing
Support cours : Les phares du marketingSupport cours : Les phares du marketing
Support cours : Les phares du marketingSmartnSkilled
 
Support formation : La négociation commerciale coté vendeur
Support formation : La négociation commerciale coté vendeurSupport formation : La négociation commerciale coté vendeur
Support formation : La négociation commerciale coté vendeurSmartnSkilled
 
Support cours : Initiation à SAP ERP
Support cours : Initiation à SAP ERPSupport cours : Initiation à SAP ERP
Support cours : Initiation à SAP ERPSmartnSkilled
 
Tutoriel : Online English Expertise
Tutoriel : Online English ExpertiseTutoriel : Online English Expertise
Tutoriel : Online English ExpertiseSmartnSkilled
 
Formation : Mettre en place une stratégie commerciale
Formation : Mettre en place une stratégie commercialeFormation : Mettre en place une stratégie commerciale
Formation : Mettre en place une stratégie commercialeSmartnSkilled
 
Support cours : Cours d'Espagnol Débutant (A1-A2)
Support cours : Cours d'Espagnol Débutant (A1-A2)Support cours : Cours d'Espagnol Débutant (A1-A2)
Support cours : Cours d'Espagnol Débutant (A1-A2)SmartnSkilled
 
Support cours : Vos premiers pas avec le pare feu CISCO ASA
Support cours : Vos premiers pas avec le pare feu CISCO ASASupport cours : Vos premiers pas avec le pare feu CISCO ASA
Support cours : Vos premiers pas avec le pare feu CISCO ASASmartnSkilled
 
Support Tutoriel : Online English Expertise
Support Tutoriel : Online English ExpertiseSupport Tutoriel : Online English Expertise
Support Tutoriel : Online English ExpertiseSmartnSkilled
 
Support formation en ligne : Manager et auditer les risques informatiques
Support formation en ligne : Manager et auditer les risques informatiquesSupport formation en ligne : Manager et auditer les risques informatiques
Support formation en ligne : Manager et auditer les risques informatiquesSmartnSkilled
 
Support Tutoriel : Art oratoire et prise de parole en public
Support Tutoriel : Art oratoire et prise de parole en publicSupport Tutoriel : Art oratoire et prise de parole en public
Support Tutoriel : Art oratoire et prise de parole en publicSmartnSkilled
 
Support formation en ligne: L'estime de soi
Support formation en ligne: L'estime de soiSupport formation en ligne: L'estime de soi
Support formation en ligne: L'estime de soiSmartnSkilled
 
Support formation vidéo : Les phares du marketing
Support formation vidéo : Les phares du marketingSupport formation vidéo : Les phares du marketing
Support formation vidéo : Les phares du marketingSmartnSkilled
 

Plus de SmartnSkilled (20)

Formation : Comment rendre une réunion efficace ?
Formation : Comment rendre une réunion efficace ?Formation : Comment rendre une réunion efficace ?
Formation : Comment rendre une réunion efficace ?
 
Support cours : Les Data Sciences avec Python Langage - Partie II
Support cours : Les Data Sciences avec Python Langage - Partie IISupport cours : Les Data Sciences avec Python Langage - Partie II
Support cours : Les Data Sciences avec Python Langage - Partie II
 
Support tutoriel : Initiation à SAP ERP
Support tutoriel : Initiation à SAP ERPSupport tutoriel : Initiation à SAP ERP
Support tutoriel : Initiation à SAP ERP
 
Support formation : Construire et administrer vos conteneurs avec Docker
Support formation : Construire et administrer vos conteneurs avec DockerSupport formation : Construire et administrer vos conteneurs avec Docker
Support formation : Construire et administrer vos conteneurs avec Docker
 
Support formation : Maîtriser la comptabilité des opérations de fin d'exercice
Support formation : Maîtriser la comptabilité des opérations de fin d'exerciceSupport formation : Maîtriser la comptabilité des opérations de fin d'exercice
Support formation : Maîtriser la comptabilité des opérations de fin d'exercice
 
Support cours : Comment rédiger un rapport ?
Support cours : Comment rédiger un rapport ?Support cours : Comment rédiger un rapport ?
Support cours : Comment rédiger un rapport ?
 
Support formation : Maîtriser les Data Sciences avec Python Language - Partie I
Support formation : Maîtriser les Data Sciences avec Python Language - Partie ISupport formation : Maîtriser les Data Sciences avec Python Language - Partie I
Support formation : Maîtriser les Data Sciences avec Python Language - Partie I
 
Support cours : Rédigez vos emails professionnels
Support cours : Rédigez vos emails professionnelsSupport cours : Rédigez vos emails professionnels
Support cours : Rédigez vos emails professionnels
 
Support cours : Les phares du marketing
Support cours : Les phares du marketingSupport cours : Les phares du marketing
Support cours : Les phares du marketing
 
Support formation : La négociation commerciale coté vendeur
Support formation : La négociation commerciale coté vendeurSupport formation : La négociation commerciale coté vendeur
Support formation : La négociation commerciale coté vendeur
 
Support cours : Initiation à SAP ERP
Support cours : Initiation à SAP ERPSupport cours : Initiation à SAP ERP
Support cours : Initiation à SAP ERP
 
Tutoriel : Online English Expertise
Tutoriel : Online English ExpertiseTutoriel : Online English Expertise
Tutoriel : Online English Expertise
 
Formation : Mettre en place une stratégie commerciale
Formation : Mettre en place une stratégie commercialeFormation : Mettre en place une stratégie commerciale
Formation : Mettre en place une stratégie commerciale
 
Support cours : Cours d'Espagnol Débutant (A1-A2)
Support cours : Cours d'Espagnol Débutant (A1-A2)Support cours : Cours d'Espagnol Débutant (A1-A2)
Support cours : Cours d'Espagnol Débutant (A1-A2)
 
Support cours : Vos premiers pas avec le pare feu CISCO ASA
Support cours : Vos premiers pas avec le pare feu CISCO ASASupport cours : Vos premiers pas avec le pare feu CISCO ASA
Support cours : Vos premiers pas avec le pare feu CISCO ASA
 
Support Tutoriel : Online English Expertise
Support Tutoriel : Online English ExpertiseSupport Tutoriel : Online English Expertise
Support Tutoriel : Online English Expertise
 
Support formation en ligne : Manager et auditer les risques informatiques
Support formation en ligne : Manager et auditer les risques informatiquesSupport formation en ligne : Manager et auditer les risques informatiques
Support formation en ligne : Manager et auditer les risques informatiques
 
Support Tutoriel : Art oratoire et prise de parole en public
Support Tutoriel : Art oratoire et prise de parole en publicSupport Tutoriel : Art oratoire et prise de parole en public
Support Tutoriel : Art oratoire et prise de parole en public
 
Support formation en ligne: L'estime de soi
Support formation en ligne: L'estime de soiSupport formation en ligne: L'estime de soi
Support formation en ligne: L'estime de soi
 
Support formation vidéo : Les phares du marketing
Support formation vidéo : Les phares du marketingSupport formation vidéo : Les phares du marketing
Support formation vidéo : Les phares du marketing
 

Dernier

666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptxSAID MASHATE
 
Bolero. pptx . Film de A nnne Fontaine
Bolero. pptx . Film   de  A nnne FontaineBolero. pptx . Film   de  A nnne Fontaine
Bolero. pptx . Film de A nnne FontaineTxaruka
 
A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.Franck Apolis
 
Fondation Louis Vuitton. pptx
Fondation      Louis      Vuitton.   pptxFondation      Louis      Vuitton.   pptx
Fondation Louis Vuitton. pptxTxaruka
 
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...Faga1939
 
Présentation de cartes d'extension zhr..pptx
Présentation de cartes d'extension zhr..pptxPrésentation de cartes d'extension zhr..pptx
Présentation de cartes d'extension zhr..pptxpopzair
 
systeme expert_systeme expert_systeme expert
systeme expert_systeme expert_systeme expertsysteme expert_systeme expert_systeme expert
systeme expert_systeme expert_systeme expertChristianMbip
 
Cours-irrigation_et_drainage_cours1.pptx
Cours-irrigation_et_drainage_cours1.pptxCours-irrigation_et_drainage_cours1.pptx
Cours-irrigation_et_drainage_cours1.pptxlamourfrantz
 
Formation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadershipFormation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadershipM2i Formation
 
Guide Final de rédaction de mémoire de fin d'étude
Guide Final de rédaction de mémoire de fin d'étudeGuide Final de rédaction de mémoire de fin d'étude
Guide Final de rédaction de mémoire de fin d'étudeBenamraneMarwa
 
MaintenanceLa Maintenance Corrective.ppt
MaintenanceLa Maintenance Corrective.pptMaintenanceLa Maintenance Corrective.ppt
MaintenanceLa Maintenance Corrective.pptssusercbaa22
 
Approche-des-risques-par-l’analyse-des-accidents-1.pptx
Approche-des-risques-par-l’analyse-des-accidents-1.pptxApproche-des-risques-par-l’analyse-des-accidents-1.pptx
Approche-des-risques-par-l’analyse-des-accidents-1.pptxssusercbaa22
 
presentation l'interactionnisme symbolique finale.pptx
presentation l'interactionnisme symbolique  finale.pptxpresentation l'interactionnisme symbolique  finale.pptx
presentation l'interactionnisme symbolique finale.pptxMalikaIdseaid1
 

Dernier (15)

666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
 
Bolero. pptx . Film de A nnne Fontaine
Bolero. pptx . Film   de  A nnne FontaineBolero. pptx . Film   de  A nnne Fontaine
Bolero. pptx . Film de A nnne Fontaine
 
A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.A3iFormations, organisme de formations certifié qualiopi.
A3iFormations, organisme de formations certifié qualiopi.
 
Fondation Louis Vuitton. pptx
Fondation      Louis      Vuitton.   pptxFondation      Louis      Vuitton.   pptx
Fondation Louis Vuitton. pptx
 
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
 
Présentation de cartes d'extension zhr..pptx
Présentation de cartes d'extension zhr..pptxPrésentation de cartes d'extension zhr..pptx
Présentation de cartes d'extension zhr..pptx
 
systeme expert_systeme expert_systeme expert
systeme expert_systeme expert_systeme expertsysteme expert_systeme expert_systeme expert
systeme expert_systeme expert_systeme expert
 
Pâques de Sainte Marie-Euphrasie Pelletier
Pâques de Sainte Marie-Euphrasie PelletierPâques de Sainte Marie-Euphrasie Pelletier
Pâques de Sainte Marie-Euphrasie Pelletier
 
Cours-irrigation_et_drainage_cours1.pptx
Cours-irrigation_et_drainage_cours1.pptxCours-irrigation_et_drainage_cours1.pptx
Cours-irrigation_et_drainage_cours1.pptx
 
Formation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadershipFormation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadership
 
Guide Final de rédaction de mémoire de fin d'étude
Guide Final de rédaction de mémoire de fin d'étudeGuide Final de rédaction de mémoire de fin d'étude
Guide Final de rédaction de mémoire de fin d'étude
 
MaintenanceLa Maintenance Corrective.ppt
MaintenanceLa Maintenance Corrective.pptMaintenanceLa Maintenance Corrective.ppt
MaintenanceLa Maintenance Corrective.ppt
 
Evaluación Alumnos de Ecole Victor Hugo
Evaluación Alumnos de Ecole  Victor HugoEvaluación Alumnos de Ecole  Victor Hugo
Evaluación Alumnos de Ecole Victor Hugo
 
Approche-des-risques-par-l’analyse-des-accidents-1.pptx
Approche-des-risques-par-l’analyse-des-accidents-1.pptxApproche-des-risques-par-l’analyse-des-accidents-1.pptx
Approche-des-risques-par-l’analyse-des-accidents-1.pptx
 
presentation l'interactionnisme symbolique finale.pptx
presentation l'interactionnisme symbolique  finale.pptxpresentation l'interactionnisme symbolique  finale.pptx
presentation l'interactionnisme symbolique finale.pptx
 

Support formation vidéo : Construire et administrer vos conteneurs avec Docker

  • 1. Formation Docker Copyright © AVAEDOS. All rights reserved Présentée par: LoïcTHOBOIS Directeur technique Fondateur de AVAEDOS Présentation de la formation Docker
  • 2. Formation Docker Copyright © AVAEDOS. All rights reserved  Le formateur  Objectifs de cette formation  Ressources de formation  Prérequis  Agenda
  • 3. Formation Docker Copyright © AVAEDOS. All rights reserved  Consultant / Formateur depuis 2001: ▪ Infrastructure (Microsoft, Docker) ▪ Développement (Web, .NET) ▪ Cloud (IaaS, Paas)  Rédacteur d’articles techniques ▪ SMART DSI, Avaedos, … ▪ Livres sur IIS, Exchange 2016 et Docker surWindows  Certifications: ▪ Microsoft : MVP, NT4 àWindows 10 etWindows Server 2012 ▪ Cisco : CCNA,CCAI ▪ SUN : SCSA, SCNA.  Contact: ▪ lthobois@live.com
  • 4. Formation Docker Copyright © AVAEDOS. All rights reserved  Avoir une vision générale de la technologie Docker ▪ Découvrir les concepts de Docker ▪ Présenter les services proposés autour de Docker ▪ Comprendre l’intégration de Docker avec son écosystème  Avoir les connaissances techniques pour monter une infrastructure
  • 5. Formation Docker Copyright © AVAEDOS. All rights reserved  Infrastructure de formation ▪ VirtualBox ▪ Hyper-V ▪ Windows Azure ▪ …  Supports de formation ▪ Supports de présentation ▪ Ateliers pratiques ▪ Outils ▪ …
  • 6. Formation Docker Copyright © AVAEDOS. All rights reserved  Connaissances de base des technologies réseau, notamment DNS et les technologies de pare-feu  Expérience d'utilisation : ▪ d’un environnement de virtualisation ▪ du système d'exploitation Windows Server / Linux ▪ des outils de gestion et d'analyse ▪ des outils de mise en réseau et de dépannage
  • 7. Formation Docker Copyright © AVAEDOS. All rights reserved 1. Présentation de Docker 2. Initiation aux conteneurs 3. Construction des images avec Dockerfile 4. Administration de la registry 5. Déploiement à l’aide de Docker compose 6. Exploitation des conteneurs 7. Déploiement des hôtes à l’aide de Docker Machine 8. Implémentation d’un cluster Swarm 9. Déploiement d’une stack de service
  • 8. Formation Docker Copyright © AVAEDOS. All rights reserved Vous avez suivi avec succès le module
  • 9. Formation Docker Copyright © AVAEDOS. All rights reserved Présentée par: LoïcTHOBOIS Directeur technique Fondateur de AVAEDOS Présentation de Docker L’environnement de Docker Docker
  • 10. Formation Docker Copyright © AVAEDOS. All rights reserved  La virtualisation  Organisation du système d’information
  • 11. Formation Docker Copyright © AVAEDOS. All rights reserved  Pourquoi la virtualisation ?  Concrètement  Avantages de la virtualisation  Les technologies de virtualisation  Exemple: le poste de travail
  • 12. Formation Docker Copyright © AVAEDOS. All rights reserved  L’origine du succès de l’informatique ▪ Participation offerte à tous  Problèmes ▪ de compatibilité ▪ d’interopérabilité ▪ de stabilité  Solutions ▪ Segmentation
  • 13. Formation Docker Copyright © AVAEDOS. All rights reserved  On manipule maintenant des conteneurs virtuels  Exemples: ▪ Je veux supprimer un programme qui ne répond plus ? Je supprime le processus (donc la mémoire et l'espace de swap du disque) liée à l'application. ▪ Je veux déplacer mon système d'exploitation car mon serveur ne démarre plus ? Je déplace la machine virtuelle (donc le disque virtuel et sa configuration) sur un autre serveur.
  • 14. Formation Docker Copyright © AVAEDOS. All rights reserved  La virtualisation apporte deux avantages:  Diminution duTCO ▪ Charges administratives réduites ▪ Meilleurs exploitation des ressources ▪ Moins de maintenance  Souplesse accrues ▪ Facilité d’administration des ressources ▪ Indépendance des ressources face à l’infrastructure
  • 15. Formation Docker Copyright © AVAEDOS. All rights reserved Virtualisation du poste de travail Virtualisation des applications Virtualisation de la présentation Virtualisation des serveurs Virtualisation de l’environnement Virtualisation des infrastructures
  • 16. Formation Docker Copyright © AVAEDOS. All rights reserved Matériel OS Données et paramètres Applications Profiles Application Poste de travail Système d’exploitation Virtualisation locale au poste Virtualisation distante Focus: DiminutionTCO Focus: Flexibilité accrue Présentation Poste de travail traditionnel Présentation Virtualisation locale au poste Virtualisation distante
  • 17. Formation Docker Copyright © AVAEDOS. All rights reserved  Web Service  SOA (Architecture orientée services)  Architectures ▪ Sans urbanisation ▪ Avec urbanisation  Micro-services  Le mouvement DevOps
  • 18. Formation Docker Copyright © AVAEDOS. All rights reserved  Communication s’appuyant sur les technologies web  Web Service SOAP ▪ Historique ▪ Implémentation lourde via contrat ▪ Format XML  Web Service REST ▪ Client Mobile ▪ FormatJSON  <menu id="file" value="File"> ▪ <popup> ▪ <menuitem value="New" onclick="CreateNewDoc()" /> ▪ <menuitem value="Open" onclick="OpenDoc()" /> ▪ <menuitem value="Close" onclick="CloseDoc()" /> ▪ </popup>  </menu>  { "menu": ▪ { "id": "file", "value": "File", "popup": ▪ { "menuitem": [ ▪ { "value": "New", "onclick": "CreateNewDoc()" }, ▪ { "value": "Open", "onclick": "OpenDoc()" }, ▪ { "value": "Close", "onclick": "CloseDoc()" } ▪ ] } ▪ }  }
  • 19. Formation Docker Copyright © AVAEDOS. All rights reserved  Ensemble de services simples ▪ Ne pas construire l'entreprise autour d'applications ▪ Découpage par service autonome  Caractéristiques ▪ S’appui sur lesWeb services ▪ Objectif de blocs interchangeables ▪ Difficulté d’implémentation ▪ Frontière technique ▪ Frontière fonctionnel de responsabilité
  • 20. Formation Docker Copyright © AVAEDOS. All rights reserved  Sans urbanisation ▪ Chaque application a son propre système de compte ▪ Donc un nouveau compte doit être créé sur chaque application ▪ Chaque modification doit être synchronisé sur chacune des applications  Avec urbanisation ▪ Un service est dédié à la gestion des comptes ▪ Chaque application vient demander les informations de compte à ce service ▪ Seul ce service doit être mis à jour à la modification d’un utilisateur
  • 21. Formation Docker Copyright © AVAEDOS. All rights reserved  Isolation au niveau de la fonctionnalité ▪ On décompose les services en plusieurs composants indépendants et faiblement couplés ▪ Souvent spécialisés dans une seule tâche  Les composants (microservices) sont reliés par des API REST  Lors d’une mise à jour, seul le microservice lié est impacté  Coût de mise en place important ▪ Modèle DDD - Domain Driven Design
  • 22. Formation Docker Copyright © AVAEDOS. All rights reserved  Permet de réunifier les développeurs avec les exploitants applicatifs et systèmes ▪ L'objectif du développeur est d'ajouter des fonctionnalités ▪ L'objectif de l'exploitant est de garantir la disponibilité du service ▪ Conflits d'intérêts entre les deux  Le mouvement DevOps est né de la volonté de globaliser les méthodes agiles à l'ensemble des services.  Pour atteindre ces objectifs, il est recommandé : ▪ De déployer régulièrement des applications ▪ De tester au plus tôt dans le processus de développement les régression et autres erreurs (intégration continue, test unitaire, ...) ▪ De réaliser les tests au plus proche de la production ▪ Un cycle d'amélioration court favorisant les échanges avec les utilisateurs. ▪ Une supervision de l'exploitation et de la qualité de production représentée par des métriques et indicateurs "clé".
  • 23. Formation Docker Copyright © AVAEDOS. All rights reserved Vous avez suivi avec succès le module
  • 24. Formation Docker Copyright © AVAEDOS. All rights reserved Présentée par: LoïcTHOBOIS Directeur technique Fondateur de AVAEDOS Présentation de Docker Les fondamentaux de Docker Docker
  • 25. Formation Docker Copyright © AVAEDOS. All rights reserved  Qu’est ce qu’un conteneur ?  Un peu d’histoire sur les conteneurs  Machines virtuelles versus conteneurs  Docker  Les commandes docker  Editions de Docker  Implémentation sous Linux et Windows
  • 26. Formation Docker Copyright © AVAEDOS. All rights reserved  Virtualisation du système d’exploitation  Perception d’environnement isolé et indépendant  Package déclaratif  Unité de déploiement « universelle »  Idéal pour le développement et les tests
  • 27. Formation Docker Copyright © AVAEDOS. All rights reserved  Conteneur = unité de transport intermodal  Virtualisation de processus ▪ UNIX chroot(1979-1982) ▪ BSDJail(1998) ▪ ParallelsVirtuozzo(2001) ▪ Solaris Containers (2005) ▪ Linux LXC (2008) ▪ Docker (2013)
  • 28. Formation Docker Copyright © AVAEDOS. All rights reserved  Machines virtuelles ▪ Isolation ▪ OS/Composants dupliqués  Conteneurs ▪ Isolation ▪ OS/Composants unifiés
  • 29. Formation Docker Copyright © AVAEDOS. All rights reserved  Créé en 2013  Solution pour manipuler des conteneurs  Modèle avec architecture de type client / serveur ▪ Client Docker ▪ Moteur Docker ▪ Communication client / serveur avec des appels en REST
  • 30. Formation Docker Copyright © AVAEDOS. All rights reserved  Composé d’une quarantaine de commandes ▪ Décrire l’image d’une application à déployer dans un conteneur ▪ Publier l’image dans un repository (public ou privé) ▪ Interroger un repository ▪ Gérer les versions des images dans un repository(appelé Registry) ▪ Déployer des images…
  • 31. Formation Docker Copyright © AVAEDOS. All rights reserved  Client Docker (ligne de commande) ▪ disponible sur Mac OS X, Linux etWindows ▪ docker run  pour instancier un nouveau conteneur ▪ docker ps  Liste les conteneurs en cours d’exécution ▪ docker pull  pour télécharger une image  Moteur Docker (Docker Host) ▪ Disponible uniquement sur Linux etWindows (10 et Server 2016) ▪ La machine peut être une machine virtuelle sur Azure, Hyper-V,VMWare, …
  • 32. Formation Docker Copyright © AVAEDOS. All rights reserved  Docker Enterprise Edition ▪ Basique: la plate-forme Docker pour une infrastructure certifiée, avec le support de Docker Inc. et des conteneurs et plugins certifiés de Docker Store ▪ Standard: ajoute une gestion avancée de l'image et du conteneur, l'intégration des utilisateurs LDAP / AD et le contrôle d'accès basé sur les rôles (Docker Datacenter) ▪ Avancé: ajoute Docker Security Scanning et surveillance continue de la vulnérabilité  DockerCommunity Edition ▪ Edge est destiné aux utilisateurs souhaitant tester les fonctionnalités les plus récentes et les plus importantes chaque mois ▪ Stable est publié trimestriellement et s'adresse aux utilisateurs qui veulent un rythme de déploiement plus facile à maintenir
  • 33. Formation Docker Copyright © AVAEDOS. All rights reserved
  • 34. Formation Docker Copyright © AVAEDOS. All rights reserved  Virtualisation et isolation ▪ Docker intègre la bibliothéque libcontainer qui exploite et combine les capacités de virtualisation du noyau Linux (namespaces, cgroups, capabilities, …)  libcontainer ▪ Format par défaut des conteneurs. ▪ Docker supporter aussi les conteneurs LXC ▪ Extension possible dans le futur (BSD Jails,Solaris Zones, ...)  namespaces ▪ Fournit le mecanisme d'isolation des conteneurs. ▪ Docker créé un ensemble de namespaces pour le conteneur  cgroups (ou Control Groups) ▪ Groupe les process et offre une administration commune ▪ Partage les ressources matériels
  • 35. Formation Docker Copyright © AVAEDOS. All rights reserved  ConteneursWindows ▪ Windows Server 2016 ▪ S’appui sur les ressources du système  Conteneurs Hyper-V ▪ Windows 10 etWindows Server 2016 ▪ S’appui sur des images Hyper-V ▪ Nano server ▪ Core server
  • 36. Formation Docker Copyright © AVAEDOS. All rights reserved Vous avez suivi avec succès le module
  • 37. Formation Docker Copyright © AVAEDOS. All rights reserved Présentée par: LoïcTHOBOIS Directeur technique Fondateur de AVAEDOS Présentation de Docker Les fondamentaux de Docker Docker
  • 38. Formation Docker Copyright © AVAEDOS. All rights reserved  Image Docker  Kernel, images et conteneurs
  • 39. Formation Docker Copyright © AVAEDOS. All rights reserved  Une image est constituée d'une série de couches appelées « layers »  Chaque image s’appuie sur une image de base (ex: Ubuntu) puis intègre des composants plus avancé comme Nginx
  • 40. Formation Docker Copyright © AVAEDOS. All rights reserved
  • 41. Formation Docker Copyright © AVAEDOS. All rights reserved Vous avez suivi avec succès le module
  • 42. Formation Docker Copyright © AVAEDOS. All rights reserved Présentée par: LoïcTHOBOIS Directeur technique Fondateur de AVAEDOS Présentation de Docker Ecosystème étendue Docker
  • 43. Formation Docker Copyright © AVAEDOS. All rights reserved  Ecosystème Docker  Docker & Cloud  Docker dans le marketplace d’Azure  Docker etVisual Studio  Et tous les autres …
  • 44. Formation Docker Copyright © AVAEDOS. All rights reserved  Docker Engine  Docker Client  Dockerfile  Docker Registry (Trusted & Hub)  Docker Compose  Docker Machine  Docker Swarm  Docker Stack
  • 45. Formation Docker Copyright © AVAEDOS. All rights reserved  Partenariat fort ! ▪ Images Docker ▪ Extensions Docker ▪ Azure Containers Services ▪ Amazon EC2 Container Service
  • 46. Formation Docker Copyright © AVAEDOS. All rights reserved  DockerTrusted Registry ▪ Docker, Inc. ▪ https://hub-beta.docker.com/enterprise/  Docker ▪ Extension Microsoft  Docker on Ubuntu Server ▪ Canonical + Microsoft
  • 47. Formation Docker Copyright © AVAEDOS. All rights reserved  Module dédié aux développeurs  Intégration à Azure  http://myview.rahulnivi.net/.Net,AS P.Net,C,EntityFramework,MVC/doc ker/
  • 48. Formation Docker Copyright © AVAEDOS. All rights reserved  Kubernetes ▪ Mise en cluster  Dokku ▪ Facilite les déploiements  Jenkins ▪ Serveur d‘intégration continu  DCOS ▪ Editeur Mesosphere ▪ Exécution, gestion et répartition de charges des containers avec Chronos  Marathon ▪ Init : Démarre les taches et vérifie la disponibilités ▪ Framework pour le cluster Apache Mesos  Chronos ▪ Cron distribué
  • 49. Formation Docker Copyright © AVAEDOS. All rights reserved Vous avez suivi avec succès le module
  • 50. Formation Docker Copyright © AVAEDOS. All rights reserved Présentée par: LoïcTHOBOIS Directeur technique Fondateur de AVAEDOS Construction des images à l’aide de Dockerfile Docker
  • 51. Formation Docker Copyright © AVAEDOS. All rights reserved  Présentation de Dockerfile  Création d’images par Dockerfile  FROM  RUN  ENV  VOLUME  COPY  ENTRYPOINT  CMD  EXPOSE
  • 52. Formation Docker Copyright © AVAEDOS. All rights reserved  L’ensemble des commandes pour construire une image, le tout rassemblé et stocké dans un fichier  Permet de créer un conteneur de manière mieux contrôlé « qu’à la main »
  • 53. Formation Docker Copyright © AVAEDOS. All rights reserved  FROM ▪ image de base (Ubuntu, Debian)  LABEL ▪ Metadonnées de l’image  VOLUME ▪ point de montage  RUN ▪ commande à exécuter pour installer le conteneur  ENTRYPOINT ▪ commande qui s’exécute au démarrage du conteneur (une seule sera exécutée) ;  CMD ▪ commande qui s’exécute au démarrage du conteneur ;  ADD ▪ copier un fichier du répertoire courant dans le système de fichiers du conteneur ;  USER ▪ utilisateur qui exécute les commandes dans le conteneur ;  EXPOSE ▪ port(s) à exposer à l’extérieur.
  • 54. Formation Docker Copyright © AVAEDOS. All rights reserved  Dockerfile commence toujours par la commande FROM  Permet de définir une image de base sur laquelle sera construite la nouvelle image ▪ Si l’image n’est pas présente, elle sera téléchargée  FROM debian:wheezy  FROM scratch ▪ image est construite sans partir d’une image existante
  • 55. Formation Docker Copyright © AVAEDOS. All rights reserved  Permet de lancer n’importe quel processus qui participe à l’élaboration de l’image en cours de compilation  RUN ["exécutable", "paramètre 1", ..., "paramètre N"] ▪ RUN ["exécutable", "paramètre 1", ..., "paramètre N"] ▪ RUN ["echo", "message"]
  • 56. Formation Docker Copyright © AVAEDOS. All rights reserved  Détermine les variables d’environnement ▪ pour l’opération de compilation du Dockerfile (RUN) ▪ dans les conteneurs qui seront lancés  L’option --env de la commande docker run permet de passer des variables d’environnement au moment du lancement du conteneur.
  • 57. Formation Docker Copyright © AVAEDOS. All rights reserved  Identifie les parties de l’arborescence devant être sauvegardé d’une session à l’autre d’un conteneur  VOLUME /var/lib/mongodb  VOLUME /var/log/mongod  Mappé dans un volume virtuel ▪ Au choix de l’administrateur si mappé ▪ Dans un emplacement configuré par défaut  Suppression des volumes ▪ docker rm -vf monconteneur
  • 58. Formation Docker Copyright © AVAEDOS. All rights reserved  Récupère les fichiers locaux sur laquelle la commande docker build est lancée  En pratique, les fichiers qui se trouvent au même emplacement que le fichier Dockerfile sont copiés dans le contexte, et donc chargés par la commande build  Il est essentiel de ne pas placer son fichier Dockerfile dans un répertoire avec des fichiers qui ne seront pas utiles à la construction de l’image ▪ Complexe sur les images qui sont construites à partir d’un dépôt GitHub  Un fichier nommé .dockerignore permet de déclarer les fichiers et répertoires à ignorer au chargement de contexte (symboles * et ? autorisés
  • 59. Formation Docker Copyright © AVAEDOS. All rights reserved  Commande qui va être exécutée lors du démarrage d’un conteneur, c’est-à-dire le processus primaire qui sera porté par ce dernier.  ENTRYPOINT ["/entrypoint.sh"] ▪ ENTRYPOINT suivi d’un tableauJSON, le premier paramètre contient la commande à exécuter, et les suivants les paramètres de cette commande.  ENTRYPOINT "/entrypoint.sh" ▪ ENTRYPOINT suivi d’une chaine, un shell est démarré et le contenu de cette chaîne lui est passé pour interprétation
  • 60. Formation Docker Copyright © AVAEDOS. All rights reserved  Passe au processus spécifié par ENTRYPOINT les paramètres par défaut, en l’absence de paramètres explicitement spécifiés en fin de commande docker run.  CMD ["mongod"]
  • 61. Formation Docker Copyright © AVAEDOS. All rights reserved  EXPOSE 27017  Expose un port réseau à l’extérieur  Il n’est pas obligatoire de mettre en correspondance le port exposé avec un port de la machine hôte  docker run permet de le faire avec l’option -p
  • 62. Formation Docker Copyright © AVAEDOS. All rights reserved Vous avez suivi avec succès le module
  • 63. Formation Docker Copyright © AVAEDOS. All rights reserved Présentée par: LoïcTHOBOIS Directeur technique Fondateur de AVAEDOS Administration de la registry Docker
  • 64. Formation Docker Copyright © AVAEDOS. All rights reserved  Docker Hub  Docker store  Registry privée
  • 65. Formation Docker Copyright © AVAEDOS. All rights reserved  Registry publique ▪ http://hub.docker.com/  Système de stockage pour les images de conteneurs ▪ évaluation / classement ▪ «automatedbuilds» pour créer automatiquement des images Docker à chaque commit d’un dépôt  Envoi des packages ▪ sudo docker push <compte>/<tag image>
  • 66. Formation Docker Copyright © AVAEDOS. All rights reserved  Registry certifiée ▪ https://store.docker.com/  Contenu ▪ Clients CE ▪ Clients EE ▪ Images ▪ Plugins  Conteneurs payant ▪ Licence
  • 67. Formation Docker Copyright © AVAEDOS. All rights reserved  Déploiement via conteneur ▪ docker run -d --name registre -p 88:5000 registry  Ajoutez d’un tag d’envoi vers le nouveau registre ▪ docker tag lthobois/myapp localhost:88/myapp  Envoi vers le nouveau registre ▪ docker push localhost:88/myapp  Téléchargement ▪ docker run -d --name conteneur localhost:88/myapp
  • 68. Formation Docker Copyright © AVAEDOS. All rights reserved Vous avez suivi avec succès le module
  • 69. Formation Docker Copyright © AVAEDOS. All rights reserved Présentée par: LoïcTHOBOIS Directeur technique Fondateur de AVAEDOS Déploiement à l’aide de Docker compose Docker
  • 70. Formation Docker Copyright © AVAEDOS. All rights reserved  Présentation  Installation  Description du fichierYAML  Utilisation  Autres commandes utiles
  • 71. Formation Docker Copyright © AVAEDOS. All rights reserved  Un seul binaire pour démarrer et administrer de multiples conteneurs et volumes sur un seul hôte docker  Spécification et configuration dans un fichier ▪ docker-compose.yml  Déplace les longues commandes docker run vers le fichier YAML ▪ docker-compose up
  • 72. Formation Docker Copyright © AVAEDOS. All rights reserved  https://docs.docker.com/compose/install/ ▪ Windows, MacOS X, Linux  Via pip, apt-get  Ou récupérer le binaire ▪ sudo curl -L https://github.com/docker/compose/releases/download/1.19.0/docker- compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose ▪ sudo chmod +x /usr/local/bin/docker-compose
  • 73. Formation Docker Copyright © AVAEDOS. All rights reserved  https://docs.docker.com/compose/c ompose-file/  Version 1 ▪ Mono serveur ▪ Prochainement déprécié  Version 2 ▪ Mono serveur ▪ Configuration réseau et stockage  Version 3 ▪ Cluster Swarm  wordpress:  image: wordpress  links:  - mysql  ports:  - "80:80"  environment:  -WORDPRESS_DB_NAME=wordpress  -WORDPRESS_DB_USER=wordpress  -WORDPRESS_DB_PASSWORD=wordpresspwd  mysql:  image: mysql  volumes:  - /home/docker/mysql:/var/lib/mysql  environment:  - MYSQL_ROOT_PASSWORD=wordpressdocker  - MYSQL_DATABASE=wordpress  - MYSQL_USER=wordpress  - MYSQL_PASSWORD=wordpresspwd
  • 74. Formation Docker Copyright © AVAEDOS. All rights reserved  docker-compose up ▪ Build des images à partir des Dockerfile ▪ Télécharges les images à partir de la registry (hub, …) ▪ Créé et démarre les conteneurs ▪ Stream les logs
  • 75. Formation Docker Copyright © AVAEDOS. All rights reserved  docker-compose run -d ▪ Exécute le projet  docker-compose ps ▪ Liste les conteneurs du projet  docker-compose stop ▪ Arrête les conteneurs du projet  docker-compose down –volumes ▪ Supprimes les conteneurs du projet
  • 76. Formation Docker Copyright © AVAEDOS. All rights reserved Vous avez suivi avec succès le module
  • 77. Formation Docker Copyright © AVAEDOS. All rights reserved Présentée par: LoïcTHOBOIS Directeur technique Fondateur de AVAEDOS Exploitation : Infrastructure réseau Docker
  • 78. Formation Docker Copyright © AVAEDOS. All rights reserved  Mode de fonctionnement standard (bridge)  Configuration réseau du conteneur  Modes de fonctionnement alternatifs  Considérations
  • 79. Formation Docker Copyright © AVAEDOS. All rights reserved  Chaque conteneur possède sa propre interface réseau  Par défaut, Docker fonctionne en mode bridge ▪ Le moteur Docker créé une couche de virtualisation entre l’interface réseau de la machine hôte et celle créée pour les conteneurs. ▪ Sur l’hôte une interface réseau dédiée docker0 (Souvent 172.17.0.1/16). ▪ Dans le conteneur, une interface réseau spécifique (Souvent 172.17.0.2/16).
  • 80. Formation Docker Copyright © AVAEDOS. All rights reserved  Ajout d’un hôte dns ▪ docker run --add-host avaedos:8.8.8.8 debian ▪ Uniquement pour les serveurs externes  Spécifie un serveur dns ▪ --dns  Change le nom de machine du conteneur ▪ --hostname
  • 81. Formation Docker Copyright © AVAEDOS. All rights reserved  Réseau isolé ▪ docker run --net none debian ping www.avaedos.com  Réseau lié à la carte locale de l’hôte ▪ sudo docker run -d --name iplocal --net host nginx  Mode join ▪ sudo docker run --rm --name join2 --net container:join1 ubuntu:trusty netstat -al  Lien dynamique entre deux conteneurs ▪ sudo docker run --rm -it --link link1:serveurweb ubuntu:trusty
  • 82. Formation Docker Copyright © AVAEDOS. All rights reserved  Documentation ▪ https://docs.docker.com/engine/reference/run/ ▪ https://docs.docker.com/engine/userguide/networking/  Limites de la couche réseau existante ▪ Impossible, en utilisant Docker seul, de réaliser un lien entre deux conteneurs portés par deux démons Docker fonctionnant sur deux machines séparées.
  • 83. Formation Docker Copyright © AVAEDOS. All rights reserved Vous avez suivi avec succès le module
  • 84. Formation Docker Copyright © AVAEDOS. All rights reserved Présentée par: LoïcTHOBOIS Directeur technique Fondateur de AVAEDOS Exploitation : Infrastructure de stockage Docker
  • 85. Formation Docker Copyright © AVAEDOS. All rights reserved  Le problème de la persistance  Gestion du stockage  Plugins de volume  Volumes orphelins  Principe de la copie sur écriture (CoW)  Intégration à Docker de la copie sur écriture  Les pilotes de stockage Docker  Quel est le meilleur pilote de stockage ?
  • 86. Formation Docker Copyright © AVAEDOS. All rights reserved  Le conteneur est l'état d'exécution d'une image ... et gère les données  2Types de données: ▪ Ephémère: ne vive que lorsque le conteneur est en vie {storagedrivers} ▪ Persistent: pas lié au cycle de vie du conteneur et doit être sauvegardé {plugins de volume}  Identification des données persistantes ▪ Le mot-cléVOLUME du Dockerfile ▪ Le commutateur -v de la commande docker run
  • 87. Formation Docker Copyright © AVAEDOS. All rights reserved  docker run -v ▪ Redirection paramétrable  docker volume ls ▪ Liste des volumes persistants  docker inspect <id conteneur> ▪ Affiche les volumes redirigés et leurs destinations  docker cp ▪ Permet de copier des fichiers à partir/vers un conteneur  docker run --volumes-from <cont>[:ro] ▪ Partage de volumes entre deux conteneurs ▪ Recommandé en lecture seule
  • 88. Formation Docker Copyright © AVAEDOS. All rights reserved  https://docs.docker.com/engine/extend/legacy_plugins/ ▪ Azure File Storage plugin ▪ BeeGFSVolume plugin ▪ Blockbridge plugin ▪ ContivVolume plugin ▪ Convoy plugin ▪ DigitalOcean Block Storage plugin ▪ DRBD plugin ▪ Flocker plugin ▪ …  Infinit ▪ Rachat par Docker en décembre 2016 ▪ https://infinit.sh/
  • 89. Formation Docker Copyright © AVAEDOS. All rights reserved  Suppression des volumes avec le conteneur ▪ docker rm –v <id conteneur>  Liste des volumes orphelins ▪ docker volume ls -qf dangling=true  Nettoyage des volumes orphelins ▪ docker volume prune
  • 90. Formation Docker Copyright © AVAEDOS. All rights reserved  Si de multiples appelants demandent des ressources initialement impossibles à distinguer, vous pouvez leur donner des pointeurs vers la même ressource.  Cette fiction peut être maintenue jusqu'à ce qu'un appelant modifie sa « copie » de la ressource.  À ce moment-là, une copie privée est créée. Cela évite que le changement soit visible ailleurs. Ceci se produit de manière transparente pour les autres appelants.  L'avantage principal est que si un appelant ne fait jamais de modifications, la copie privée n'est jamais créée.
  • 91. Formation Docker Copyright © AVAEDOS. All rights reserved  Sans copie sur écriture ▪ Il faudrait une éternité pour lancer un conteneur ▪ Les conteneurs utiliseraient beaucoup d'espace  Sans copie sur écriture "sur votre bureau" ... ▪ Docker ne serait pas utilisable sur votre machine ▪ Il n'y aurait pas Docker ▪ ☹
  • 92. Formation Docker Copyright © AVAEDOS. All rights reserved  Optimisation sur la copie sur écriture  2 niveaux de gestion des données: ▪ Niveau fichier: La modification d'un fichier entraîne la manipulation de tout le fichier ▪ Lenteur à l’écriture ▪ Niveau bloc: La modification d’un fichier entraîne la modification du bloc contenant cet octet ▪ Rapidité d’écrite ▪ Lenteur liée à la fragmentation ▪ Considéré comme plus rapide  https://docs.docker.com/engine/user guide/storagedriver/  Driver Date Noyau  Unionfs 2003 NO  AUFS 2006 NO  Overlay 2014 3.18  DeviceMapper 2005 2.6.9  Btrfs 2007 2.6.29  ZFS 2013 NO
  • 93. Formation Docker Copyright © AVAEDOS. All rights reserved  AUFS: ▪ Rapide (monture ou E / S) {cache de page}. ▪ Absent du noyau principal ▪ La recopie et CoW peut être très coûteux  Overlay FS: ▪ Accès au cache en un coup ▪ Mais pas la copie ▪ Forte consommation d'inode ▪ Vérifier le disponibilité sur les distributions ▪ Pas totalement compatible POSIX ... de nos jours, qui s'en soucie?  Device Mapper: ▪ Les snapshots sont des périphériques réels. ▪ La performance pourrait être un problème ... mais il existe un conteneur partagé et un conteneur en lecture seule.  Btrfs: ▪ Pas de cache de page. ▪ Gestion des fragments {soit petites écritures, fragmentation, rebalanace}. ▪ Les écritures pourraient être coûteuses. ▪ Dans certaines distros encore dans l'aperçu technique.  ZFS: ▪ Nécessite plus de mémoire ▪ Un pilote robuste avec une longue histoire en mode production ▪ Riche de fonctionnalités "stables"
  • 94. Formation Docker Copyright © AVAEDOS. All rights reserved Vous avez suivi avec succès le module
  • 95. Formation Docker Copyright © AVAEDOS. All rights reserved Présentée par: LoïcTHOBOIS Directeur technique Fondateur de AVAEDOS Exploitation : Bonnes pratiques et supervision Docker
  • 96. Formation Docker Copyright © AVAEDOS. All rights reserved  Configuration du daemon docker  Démarrage automatique  Gestion des logs  Restriction sur les ressources  Sécurité  Supervision à l’aide de Rancher
  • 97. Formation Docker Copyright © AVAEDOS. All rights reserved  Configuration au lancement ▪ $ dockerd -D --tls=true --tlscert=/var/docker/server.pem --tlskey=/var/docker/serverkey.pem -H tcp://192.168.59.3:2376  Fichier daemon.json ▪ { ▪ "debug": true, ▪ "tls": true, ▪ "tlscert": "/var/docker/server.pem", ▪ "tlskey": "/var/docker/serverkey.pem", ▪ "hosts": "tcp://192.168.59.3:2376" ▪ }  Options avancées ▪ https://docs.docker.com/engine/admin/
  • 98. Formation Docker Copyright © AVAEDOS. All rights reserved  Paramètre --restart (docker run --restart <param>) ▪ no: Ne redémarre pas le conteneur.Valeur par défaut. ▪ on-failure[:max-retries] : Redémarre uniquement si le conteneur est sorti avec un état de sortie non nul. ▪ always:Toujours redémarrer le conteneur indépendamment de l'état de sortie. Tentera de redémarrer le conteneur indéfiniment. ▪ unless-stopped: À moins d'arrêterToujours redémarrer le conteneur, sauf si le conteneur a été arrêté avant.
  • 99. Formation Docker Copyright © AVAEDOS. All rights reserved  Application standard via console ▪ docker logs ▪ Redirection des répertoires correspondants  Bonnes pratiques ▪ Répertoires par défaut /log dans la configuration applicative (Dockerfile)
  • 100. Formation Docker Copyright © AVAEDOS. All rights reserved  Documentation ▪ https://docs.docker.com/engine/reference/run/  Limiter l’usage mémoire et processeur d’un conteneur ▪ docker run -it --memory 256m --cpushares 256 ubuntu  --cpushares ▪ Limite sur les tranches de processeur de manière relative. ▪ Tant que le conteneur est seul il utilise 100 % du CPU  --memory ▪ La mémoire est limitée en taille absolue
  • 101. Formation Docker Copyright © AVAEDOS. All rights reserved  l’option --user sur la commande docker run permet de limiter les privilèges dans le conteneur
  • 102. Formation Docker Copyright © AVAEDOS. All rights reserved  Plusieurs outils sur le marché ▪ https://portainer.io/ ▪ https://rancher.com/ ▪ Applications Chrome store ▪ …  Fonctionnalité diverses ▪ Supervision / Administration ▪ Registry interne ▪ Gestion des orchestrateurs ▪ …
  • 103. Formation Docker Copyright © AVAEDOS. All rights reserved Vous avez suivi avec succès le module
  • 104. Formation Docker Copyright © AVAEDOS. All rights reserved Présentée par: LoïcTHOBOIS Directeur technique Fondateur de AVAEDOS Déploiement à l’aide de Docker machine Docker
  • 105. Formation Docker Copyright © AVAEDOS. All rights reserved  Présentation  Provisioning  Exemples d’implémentation  Installation  Exemples d’utilisation  Déploiement de Docker Swarm
  • 106. Formation Docker Copyright © AVAEDOS. All rights reserved  Déploiement et administration des hôtes de conteneur ▪ Provisions de machines virtuelles ▪ Démarrage, Arrêt, Suppression de machines virtuelles ▪ Installation / Configuration du moteur Docker ▪ Administration basic de l’hôte ▪ Provision de nœud Swarm  Installation et configuration de docker sur plusieurs systèmes ▪ Une quinzaine de pilotes disponibles ▪ VirtualBox,VMware, Hyper-V ▪ Azure, AWS, DigitalOcean, GCE, etc
  • 107. Formation Docker Copyright © AVAEDOS. All rights reserved  Vérification / Installation de l’hyperviseur ▪ Hyper-V,VirtualBox, Azure, …  Téléchargement du système d’exploitation hôte ▪ Boot2Docker, RancherOS, Ubuntu, Debian, …  Déploiement de la machine virtuelle ▪ Configuration mémoire, CPU, …  Création et déploiement d’un jeu de clé SSH ▪ Magasin local et de l’hôte déployé  Installation du moteur Docker ▪ Choix de la version  Intégration à un cluster SWARM ▪ Optionnel
  • 108. Formation Docker Copyright © AVAEDOS. All rights reserved  Développement local et test ▪ Remplace Boot2Docker  Test de cluster Swarm ▪ Provision rapide de clusters locaux  Test des versions du moteur docker
  • 109. Formation Docker Copyright © AVAEDOS. All rights reserved  https://docs.docker.com/machine/install-machine/ ▪ Windows, Linux, MacOS X  Téléchargement du binaire ▪ $ curl -L https://github.com/docker/machine/releases/download/v0.13.0/docker- machine-`uname -s`-`uname -m` >/tmp/docker-machine && sudo install /tmp/docker-machine /usr/local/bin/docker-machine  Autorisation de l’execution du binaire ▪ $ chmod +x docker-machine
  • 110. Formation Docker Copyright © AVAEDOS. All rights reserved  docker-machine create -d azure –azure-subscription-id=“<sub-id>” –azure- subscription-cert=“<cert.pem>” node1 ▪ Déploiement d’une machine dans le cloud  docker-machine ls ▪ Liste des machines attachés à docker-machine  docker-machine ssh node1 ▪ Connexion à une machine en SSH  docker-machine env mycontainer ▪ Liste des variables d’environnement d’un conteneur
  • 111. Formation Docker Copyright © AVAEDOS. All rights reserved  Création d’un token pour la découverte  Déployer les nœuds avec les paramètres swarm ▪ --swarm, --swarm-master, --swarm-discovery, …  docker swarm init ▪ 9fb09d6631e61568502b0e710169a7d3  docker-machine create -d azure --swarm --swarm-discovery token:// 9fb09d6631e61568502b0e710169a7d3 node1  docker-machine create -d virtualbox --swarm --swarm-master --swarm- discovery token:// 9fb09d6631e61568502b0e710169a7d3 node2
  • 112. Formation Docker Copyright © AVAEDOS. All rights reserved Vous avez suivi avec succès le module
  • 113. Formation Docker Copyright © AVAEDOS. All rights reserved Présentée par: LoïcTHOBOIS Directeur technique Fondateur de AVAEDOS Docker Swarm Docker
  • 114. Formation Docker Copyright © AVAEDOS. All rights reserved  Orchestrateur : Qu’est-ce que c’est ?  Swarm mode  De nos jours … à Swarm  Caractéristiques de Swarm  Administration du cluster  Mise en place du cluster  Administration des services  Défaillance d’un nœud  Quorum MNS  Réseau overlay
  • 115. Formation Docker Copyright © AVAEDOS. All rights reserved  Gère un pool de ressources  Il connaît la topologie du cluster ▪ Ressources disponibles ▪ Applications déployées  Il connait l’état de santé … ▪ …des services ▪ …de la plateforme  C’est une évolution des outils ▪ Manuel (Scripts)  Automatisé (Conformité)  Délégué (Orchestration)
  • 116. Formation Docker Copyright © AVAEDOS. All rights reserved  Introduit avec la v1.12 ▪ Remplace Docker Swarm  Client Docker ▪ Proxy des requêtes vers docker engine ▪ Pas de GUI par défaut (portainer, rancher, …) ▪ Implémentation facile  Vocabulaire: ▪ Node: Docker engine membre du cluster swarm de type Manager ouWorker ▪ Service: Ensemble de tâches ▪ Tâches: Un conteneur et sa commande  Docker Swarm mode ▪ 3000 commits ▪ 71 contributeurs  Développé en Go  Géré par Docker Inc
  • 117. Formation Docker Copyright © AVAEDOS. All rights reserved
  • 118. Formation Docker Copyright © AVAEDOS. All rights reserved
  • 119. Formation Docker Copyright © AVAEDOS. All rights reserved  Docker REST API (>85%)  Gestion des ressources (CPU, Mémoire, Réseau, Stockage)  Planification avec contraintes et affinités  Stack de service pour les architectures applicatives avancées  TLS: Chiffrement & Authentification
  • 120. Formation Docker Copyright © AVAEDOS. All rights reserved  docker swarm ▪ Gestion du cluster ▪ init Initialize a swarm ▪ join Join a swarm as a node and/or manager ▪ join-token Manage join tokens ▪ leave Leave the swarm ▪ unlock Unlock swarm ▪ unlock-key Manage the unlock key ▪ update Update the swarm  docker node ▪ Gestion des nœuds du cluster ▪ demote Demote one or more nodes from manager in the swarm ▪ inspect Display detailed information on one or more nodes ▪ ls List nodes in the swarm ▪ promote Promote one or more nodes to manager in the swarm ▪ ps List tasks running on one or more nodes, defaults to current node ▪ rm Remove one or more nodes from the swarm ▪ update Update a node  docker service ▪ Gestion des conteneurs dans Swarm (services) ▪ create Create a new service ▪ inspect Display detailed information on one or more services ▪ logs Fetch the logs of a service or task ▪ ls List services ▪ ps List the tasks of one or more services ▪ rm Remove one or more services ▪ scale Scale one or multiple replicated services ▪ update Update a service
  • 121. Formation Docker Copyright © AVAEDOS. All rights reserved  Création du cluster: ▪ docker swarm init  Ajouter un nœud au cluster: ▪ docker swarm join –token <token> <ip leader>:2377  Promouvoir un nœud en tant que manager ▪ docker node promote noeud1
  • 122. Formation Docker Copyright © AVAEDOS. All rights reserved  Mémoire ▪ docker service create --limit-memory 1g …  CPU ▪ docker service create --limit-cpu 1 …  Ports ▪ docker service create -p 80:80 …  Documentation ▪ https://docs.docker.com/engine/reference/commandline/service_create/
  • 123. Formation Docker Copyright © AVAEDOS. All rights reserved  Contraintes du docker info ▪ docker service create --constraint “constraint:operatingsystem==*deb*” … ▪ docker service create --constraint “constraint:storagedriver==*aufs*” …  Contraintes du label ▪ docker service create -d --label “region==us-east” ▪ docker service create --constraint “constraint:region==us-east” …  Contrainte de l’hote ▪ docker service create --constraint “constraint:node==ubuntu-2” …
  • 124. Formation Docker Copyright © AVAEDOS. All rights reserved  Affinités sur les conteneurs ▪ docker run --name web nginx ▪ docker service create -e “affinity:container==web” logger  Anti-affinités sur les conteneurs ▪ docker service create --name redis-master redis ▪ docker service create --name redis-slave -e “affinity:container!=redis*” …  Affinités sur les images ▪ docker service create -e “affinity:image==redis” redis
  • 125. Formation Docker Copyright © AVAEDOS. All rights reserved
  • 126. Formation Docker Copyright © AVAEDOS. All rights reserved
  • 127. Formation Docker Copyright © AVAEDOS. All rights reserved
  • 128. Formation Docker Copyright © AVAEDOS. All rights reserved
  • 129. Formation Docker Copyright © AVAEDOS. All rights reserved
  • 130. Formation Docker Copyright © AVAEDOS. All rights reserved
  • 131. Formation Docker Copyright © AVAEDOS. All rights reserved Swarm Size Majority FaultTolerance 1 1 0 2 2 0 3 2 1 4 3 1 5 3 2 6 4 2 7 4 3 8 5 3 9 5 4  Pour éviter le split brain ▪ Majorité absolue de manager disponible  Sauvegarde du manager ▪ /var/lib/docker/swarm ▪ Clé du cluster  Documentation ▪ https://docs.docker.com/engine/swarm/ admin_guide/
  • 132. Formation Docker Copyright © AVAEDOS. All rights reserved  Spécifique au cluster Swarm ▪ Réseau inter-hôtes  Création ▪ docker network create --driver overlay --subnet 10.0.9.0/24 my-multi-host- network  https://docs.docker.com/engine/userguide/networking/get-started- overlay/
  • 133. Formation Docker Copyright © AVAEDOS. All rights reserved  Load balancer intégré sur les ports publiés ▪ Indépendance à la publication ▪ Dépendance aux défaillances matériels  Mise à jour de publication possible ▪ docker service update --publish-add <PUBLISHED-PORT>:<TARGET-PORT> <SERVICE>
  • 134. Formation Docker Copyright © AVAEDOS. All rights reserved  Utilisation d’un reverse proxy pour la protection de l’infrastructure
  • 135. Formation Docker Copyright © AVAEDOS. All rights reserved Vous avez suivi avec succès le module
  • 136. Formation Docker Copyright © AVAEDOS. All rights reserved Présentée par: LoïcTHOBOIS Directeur technique Fondateur de AVAEDOS Déploiement d’une Stack de service Docker
  • 137. Formation Docker Copyright © AVAEDOS. All rights reserved  Docker Stack  Administration  Bientôt les bundles…
  • 138. Formation Docker Copyright © AVAEDOS. All rights reserved  Nouvelle méthode de déploiement des applications multi-conteneur dans un cluster Swarm  Utilise un fichier docker-compose v3 ▪ Instructions pour swarm ▪ https://docs.docker.com/docker-cloud/apps/stack-yaml-reference/  Déploiement via docker stack ▪ docker stack deploy --compose-file docker-compose.yml mystack
  • 139. Formation Docker Copyright © AVAEDOS. All rights reserved  docker stack ▪ Gestion des piles de service ▪ deploy Deploy a new stack or update an existing stack ▪ ls List stacks ▪ ps List the tasks in the stack ▪ rm Remove one or more stacks ▪ services List the services in the stack 140
  • 140. Formation Docker Copyright © AVAEDOS. All rights reserved  Evolution de stack ▪ Expérimentale actuellement  Format d’image multi-services ▪ Facilite le packaging  Créer à partir de docker-compose ▪ docker-compose bundle 141
  • 141. Formation Docker Copyright © AVAEDOS. All rights reserved Vous avez suivi avec succès le module
  • 142. Formation Docker Copyright © AVAEDOS. All rights reserved Présentée par: LoïcTHOBOIS Directeur technique Fondateur de AVAEDOS Conclusion Docker
  • 143. Formation Docker Copyright © AVAEDOS. All rights reserved 1. Ecosystème Docker 2. La pile de technologie 1. Docker Machine 2. Conteneurs 3. Dockerfile 4. Docker compose 5. Swarm 6. Stack de service 3. Exploitation 1. Stockage 2. Réseau
  • 144. Formation Docker Copyright © AVAEDOS. All rights reserved Vous avez suivi avec succès le module