Vous présentez votre analyse à Liam, qui est impressionné par votre compréhension déjà profonde du sujet. Votre conclusion est sans appel : la future application Libra étant un service web ouvert au public, soumis à des variations de charge imprévisibles, elle entre typiquement dans le scénario idéal pour les conteneurs. La décision est prise : Libra sera conteneurisée.
Préparez votre machine à l’usage de Docker
Docker repose sur une architecture client/serveur. Une installation classique de Docker est donc composée des éléments suivants, constituant ce qui est communément appelé le “Docker Engine” (voir chapitre précédent) :
Docker Daemon (dockerd) : Le daemon Docker est le composant serveur de Docker. Il gère les actions de Docker sur l’hôte, y compris la création, l’exécution et la surveillance des conteneurs.
Docker Client : Le client Docker est l’interface en ligne de commande (CLI) utilisée par les utilisateurs pour interagir avec Docker. C’est le composant client de l’architecture.
Docker peut être installé de plusieurs façons selon votre système d’exploitation. Voici les principales méthodes :
Installation par paquets Linux : Utilisation des gestionnaires de paquets natifs comme APT, YUM ou DNF.
Installation via Docker Desktop : Pour Windows et Mac, Docker propose Docker Desktop, une application qui inclut Docker Daemon et Docker Client.
Installation manuelle : Téléchargement et configuration des binaires Docker, utile pour des installations spécifiques ou des versions non prises en charge par les gestionnaires de paquets.
Et c’est codé avec quoi Docker ?
Le projet Docker utilise principalement le langage Go, un langage générique très utilisé aujourd’hui par les projets d’infrastructures logicielles. En tant que projet open-source, les sources sont d’ailleurs librement disponibles sur GitHub.
De manière générale, privilégiez toujours les installations par paquet ou via Docker Desktop afin de profiter des mises à jour de sécurité.
Installez Docker sur votre machine
Installation par paquets Linux
1/ Mettre à jour le système :
sudo apt-get update sudo apt-get upgrade
2/ Supprimer les potentiels paquets conflictuels :
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done
3/ Configurer le dépôt de paquets officiel Docker :
# On ajoute la clé GPG officielle du projet Docker sudo apt-get update sudo apt-get install ca-certificates curl sudo install -m 0755 -d /etc/apt/keyrings sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc sudo chmod a+r /etc/apt/keyrings/docker.asc # On ajoute le dépôt aux sources APT echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \ $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \ sudo tee /etc/apt/sources.list.d/docker.list > /dev/null sudo apt-get update
4/ Installer les paquets Docker :
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
5/ Vérifier que Docker est correctement installé :
# Afficher la version de Docker (client & serveur) docker version
Linux ? Jamais je n’en aurais besoin…
Comme vu un peu plus tôt, la conteneurisation est historiquement une technologie issue du monde GNU/Linux (Unix). La majorité des plateformes d’hébergement proposent donc des systèmes hôte GNU/LInux. Il est donc opportun de s’y essayer dès à présent si vous persistez dans cette voie !
Installation Windows
Exécuter le fichier téléchargé et suivez les instructions de l’installateur.
Effectuer les opérations post-installation :
Après l’installation, redémarrer votre machine si nécessaire.
Lancer Docker Desktop et suivre les instructions de configuration initiale.
Vérifier l’installation. Ouvrir un terminal PowerShell ou CMD et exécuter :
# Afficher la version de Docker (client & serveur)
docker version
Installation Mac
Ouvrir le fichier
.dmg
téléchargé et déplacer l'icône “Docker” dans le dossier Applications.Lancer Docker Desktop et suivre les instructions de configuration initiale.
Vérifier l’installation. Ouvrir un terminal et exécuter :
# Afficher la version de Docker (client & serveur) docker version
À vous de jouer
Contexte
Suite à la dernière réunion avec le CEO on vous a confié la tâche d’évaluer la difficulté d’installation de Docker pour les futurs développeurs qui travailleront sur l’application Libra.
Tu m’as convaincu que Docker est une technologie incontournable ! Mais est ce que nos équipes seront en mesure de le prendre en main rapidement ? Nous avons des délais à tenir si nous voulons rassurer nos investisseurs…
Consignes
Identifiez votre OS (Linux / Windows ou Mac)
Suivez les instructions d’installation de Docker sur votre machine.
Vérifiez votre travail à l’aide de cet exemple de corrigé
Assurez-vous que l’exécution de la commandedocker version
renvoie un message ressemblant à celui-ci :
Client: Version: <VERSION_NUMBER> API version: <API_VERSION> Go version: <GO_VERSION> Git commit: <COMMIT_REFERENCE> Built: <BUILD_DATE> OS/Arch: <OS_ARCH> Context: default Server: Engine: Version: <VERSION_NUMBER> API version: <API_VERSION> Go version: <GO_VERSION> Git commit: <COMMIT_REFERENCE> Built: <BUILD_DATE> OS/Arch: <OS_ARCH> Experimental: false containerd: Version: <VERSION_NUMBER> GitCommit: <COMMIT_REFERENCE> runc: Version: <VERSION_NUMBER> GitCommit: docker-init: Version: <VERSION_NUMBER> GitCommit: <COMMIT_REFERENCE>
En résumé
Docker repose sur un modèle client/serveur.
Le Docker Daemon (dockerd) est le composant serveur qui gère toutes les opérations sur les conteneurs.
Le Docker Client est l'interface en ligne de commande utilisée par les utilisateurs pour envoyer des commandes au daemon Docker.
Docker peut être installé de plusieurs façons selon le système d'exploitation utilisé. Pour les utilisateurs de Linux, Docker s'installe via les gestionnaires de paquets natifs. Pour les utilisateurs de Windows et Mac, Docker Desktop est une application qui inclut tout ce qui est nécessaire pour exécuter Docker.
Docker est installé sur votre machine. Il est désormais temps de découvrir comment l’utiliser concrètement !