virli/tutorial/docker-orchestration/setup.md

4.1 KiB

\newpage

Mise en place

Durant le premier TP, nous avons installé l'environnement Docker principal, qui inclut le client, le daemon et toute sa machinerie. Mais le projet Docker propose de nombreuses autres ressources, souvent directement trouvée dans les usages de la communauté, et parfois même approprié par Docker.

docker-machine

Pour ce TP, nous allons avoir besoin de docker-machine, installez-le sur votre machine hôte, même si ce n'est pas un Linux : le but va être de lancer plusieurs machines virtuelles Docker pour simuler un cluster.

Ce programme permet de simplifier la gestion du multiples environnements Docker, comme par exemple lorsque l'on souhaite gérer un cluster de machines pour un projet.

Ainsi, il est possible de provisionner et gérer des machines hôtes sur les plates-formes de cloud habituelles. C'est également ce projet qui est à la base de Docker for Mac et Docker for Windows, en permettant de lancer via, respectivement, VirtualBox et Hyper-V, un environnement Linux prêt à être utilisé avec Docker.

Par la distribution binaire

L'équipe en charge de docker-machine met à disposition un exécutable compilé pour bon nombres d'environnements. Nous pouvons l'installer en suivant la procédure suivante :

curl -L https://github.com/docker/machine/releases/download/v0.12.2/docker-machine-Linux-x86_64 \
    > /usr/bin/docker-machine
chmod +x /usr/bin/docker-machine

Si vous êtes dans un environnement différent, jetez un œil à la documentation d'installation.

Support de KVM

Le programme support de base de nombreux environnement, dont VirtualBox et Hyper-V. Bien d'autres environnements peuvent être supportés, au moyen de plug-ins.

Si vous utilisez KVM comme hyperviseur, vous allez avoir besoin d'installer le plugins docker-machine-kvm. Vous n'aurez qu'à suivre les instructions du README !

Vérification du fonctionnement

Comme avec Docker, nous pouvons vérifier le bon fonctionnement de docker-machine en exécutant la commande :

42sh$ docker-machine version
docker-machine version 0.12.2, build 9371605

docker-compose

Pour ce TP, nous allons également avoir besoin de docker-compose.

Ce projet ne bénéficie pas d'une intégration au sein du projet Docker et doit être téléchargé séparément, car originellement, le projet était développé par une équipe indépendante1. Il constitue aujourd'hui une brique de l'écosystème Docker, presque indispensable !

Par le gestionnaire de paquets

Les distributions à jour vous proposeront un paquet docker-compose qui fonctionnera avec la version de Docker qu'ils fournissent.

Par la distribution binaire

L'équipe en charge de Docker compose met à disposition un exécutable contenant tous les scripts. Nous pouvons l'installer en suivant la procédure suivante :

curl -L https://github.com/docker/compose/releases/download/1.16.1/docker-compose-Linux-x86_64 \
    > /usr/bin/docker-compose
chmod +x /usr/bin/docker-compose

pip

Le projet étant écrit en Python, il est également disponible via pip, si vous préférez cette méthode. N'oubliez pas de préciser une version compatible avec votre version de Docker.

Vérification du fonctionnement

Comme avec Docker, nous pouvons vérifier le bon fonctionnement de docker-compose en exécutant la commande :

42sh$ docker-compose --version
docker-compose version: 1.16.1

Si vous obtenez une réponse similaire, c'est que vous êtes prêt à commencer le TP ! Alors n'attendons pas, partons à l'aventure !

Play With Docker

Tout comme pour le TP précédent, si vous avez des difficultés pour réaliser les exercices sur vos machines, vous pouvez utiliser le projet Play With Docker qui vous donnera accès à un bac à sable avec lequel vous pourrez réaliser tous les exercices de ce TP.


  1. Le site du projet initial est toujours en ligne : https://www.fig.sh/. ↩︎