

Installation & Utilisation de Docker
sur un système Linux
Introduction
Partie 2 : Utilisation de Docker
La clé pour commencer à travailler avec n'importe quel conteneur docker est d'utiliser des images. Il y a beaucoup d'images librement partagées à travers l'index d'image docker. La CLI permet un accès simple pour interroger le référentiel d'images ainsi que pour en télécharger de nouvelles.
Lorsque vous êtes prêt, vous pouvez également partager votre image. Voir la section "partager" plus bas pour plus de détails.
Dans ce tutoriel, vous avez déjà installé Docker Community Edition (CE) et vous allez désormais l'utiliser sur Ubuntu 18.04. Vous utiliserez des conteneurs et des images, puis transférerez une image dans un référentiel Docker.
Étape 4 - Utilisation des images Docker
Par défaut, Docker extrait ces images de Docker Hub, un registre géré par Docker, la société à l'origine du projet. Tout le monde peut héberger ses images sur Docker Hub. Ainsi, la plupart des applications et des distributions Linux dont vous aurez besoin auront des images hébergées ici.
Travailler avec les images
Pour vérifier si vous pouvez accéder aux images et les télécharger à partir de Docker Hub, tapez:
docker run hello-world
La sortie suivante indiquera que Docker fonctionne correctement:
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
9bb5a5d4561a: Pull complete
Digest: sha256:3e1764d0f546ceac4565547df2ac4907fe46f007ea229fd7ef2718514bcec35d
Status: Downloaded newer image for hello-world:latest
Hello from Docker!
This message shows that your installation appears to be working correctly.
...
Docker, initialement incapable de trouver l'image hello-world localement a donc téléchargé l'image à partir de Docker Hub, le référentiel par défaut. Une fois l'image téléchargée Docker a créé un conteneur à partir de l'image et de l'application exécutée dans le conteneur, affichant le message.
Vous pouvez rechercher des images disponibles sur Docker Hub à l'aide de la commande docker search.
Par exemple, pour rechercher l'image Ubuntu, tapez:
docker search ubuntu
Cela vous donnera une très longue liste de toutes les images disponibles correspondant à la requête : Ubuntu.
Une fois que vous avez identifié l'image que vous souhaitez utiliser, vous pouvez la télécharger sur votre ordinateur à l'aide de la sous-commande pull.
Exécutez la commande suivante pour télécharger l'image Ubuntu officielle sur votre machine:
docker pull ubuntu
Vous devrez voir la sortie suivante:
Using default tag: latest
latest: Pulling from library/ubuntu
32802c0cfa4d: Pull complete
da1315cffa03: Pull complete
fa83472a3562: Pull complete
f85999a86bef: Pull complete
Digest: sha256:6d0e0c26489e33f5a6f0020edface2727db9489744ecc9b4f50c7fa671f23c49
Status: Downloaded newer image for ubuntu:latest
Pour voir les images téléchargées sur votre ordinateur, tapez:
docker images
Nous verrons plus loin dans ce tutoriel que les images que vous utilisez pour exécuter des conteneurs peuvent être modifiées et utilisées pour générer de nouvelles images, qui peuvent ensuite être téléchargées ( le terme technique est poussé ) vers Docker Hub ou d'autres registres Docker.
Étape 5 - Exécution d'un conteneur Docker
Le conteneur hello-world que vous avez exécuté à l'étape précédente est un exemple de conteneur qui s'exécute et se ferme après avoir émis un message de test. Les conteneurs peuvent être beaucoup plus utiles que cela, et ils peuvent être interactifs. Après tout, ils ressemblent aux machines virtuelles, mais ils sont plus conviviales.
Par exemple, exécutons un conteneur en utilisant la dernière image d'Ubuntu. La combinaison des commutateurs -i et -t vous donne un accès interactif au shell dans le conteneur:
docker run -it ubuntu
Votre invite de commande devrait changer pour refléter le fait que vous travaillez maintenant dans le conteneur et devrait prendre la forme suivante:
root@d9b100f2f636:/#
Notez l'ID de conteneur dans l'invite de commande. Dans cet exemple, nous avons d9b100f2f636. Vous aurez besoin de cet ID de conteneur ultérieurement pour identifier le conteneur.
Vous pouvez maintenant exécuter n’importe quelle commande dans le conteneur. Par exemple, mettons à jour la base de données de paquets à l'intérieur du conteneur. Vous n'avez pas besoin de préfixer une commande sudo, car vous opérez dans le conteneur en tant qu'utilisateur root :
apt update
Ajoutez le référentiel Docker aux sources APT:
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic stable"
Ensuite, mettez à jour la base de données des paquets avec les pacquets Docker du référentiel nouvellement ajouté:
sudo apt-get update
Assurez-vous que vous êtes sur le point d'installer à partir du référentiel Docker au lieu du référentiel par défaut Ubuntu:
apt-cache policy docker-ce
Enfin, installez Docker:
sudo apt install docker-ce
Vérification
Docker devrait maintenant être installé, le démon démarré et le processus activé pour pouvoir démarrer au démarrage. Vérifiez qu'il est en cours d'exécution:
sudo systemctl status docker
La sortie devrait être semblable à celle-ci, montrant que le service est actif et en cours d'exécution:
-
docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2018-07-05 15:08:39 UTC; 2min 55s ago
Docs: https://docs.docker.com
Main PID: 10096 (dockerd)
Tasks: 16
CGroup: /system.slice/docker.service
├─10096 /usr/bin/dockerd -H fd://
└─10113 docker-containerd --config /var/run/docker/containerd/containerd.toml
L'installation de Docker vous donne maintenant non seulement le service Docker (démon) mais également l'utilitaire des lignes de commandes et le client Docker. Nous verrons comment utiliser les commandes de Docker plus tard dans ce tutoriel.
Étape 5 - Construction de notre première image Docker
Dans cette partie, nous allons comprendre les bases de la création d’images Docker.
Nous allons utiliser des images prédéfinies pour obtenir le sous-système Linux de base, car il faut beaucoup de travail pour en créer une à partir de rien.
Vous pouvez vous procurer Alpine (la distribution officielle utilisée par Docker Editions), Ubuntu, BusyBox ou scratch. Dans cet exemple, nous allons continuer à utiliser Ubuntu.
Avant de commencer à construire nos images, «conteneurisons-les»! Cela signifie simplement créer des répertoires pour toutes vos images Docker afin que vous puissiez gérer différents projets et étapes isolés les uns des autres.
mkdir dockerprojects
cd dockerprojects
Créez maintenant un fichier Docker dans le répertoire dockerprojects à l’aide de votre éditeur de texte préféré. Je préfère le nano, qui est également facile pour les nouveaux utilisateurs.
nano Dockerfile
Et ajoutez cette ligne:
FROM Ubuntu
Enregistrez-le, puis quittez
docker build -t dockp .
Notez le point à la fin de la commande.
L'image devrait se construire automatiquement, ainsi vous verrez:
Créez maintenant votre nouvelle image et attribuez-lui un nom (exécutez ces commandes dans le même répertoire):
Sending build context to Docker daemon 2.048kB
Step 1/1 : FROM ubuntu
---> 2a4cca5ac898
Successfully built 2a4cca5ac898
Successfully tagged dockp:latest
Il est temps d'exécuter et de tester notre image:
docker run -it Ubuntu
Vous devriez voir l'invite de la racine:
root@c06fcd6af0e8:/#
Pour afficher les options disponibles pour une commande spécifique, tapez:
docker sous-commande-docker --help
Pour afficher des informations sur Docker à l’échelle du système, utilisez:
docker info
Explorons maintenant certaines de ces commandes.
Nous allons commencer par travailler avec des images.
