Comment installer Docker sur Debian 12, 11 ou 10

Docker a rapidement gagné en popularité en raison de sa capacité à simplifier le processus de déploiement en conteneurisant les applications, garantissant ainsi la cohérence entre plusieurs environnements. Sa légèreté et sa capacité à évoluer efficacement en ont fait un favori parmi les développeurs et les professionnels de l'informatique.

  • Portabilité: Les conteneurs Docker peuvent s'exécuter sur n'importe quel système prenant en charge Docker, garantissant ainsi que votre application fonctionne de manière transparente dans différents environnements.
  • Isolement: Chaque conteneur fonctionne de manière indépendante, réduisant les risques de conflits et facilitant la gestion des dépendances.
  • Efficacité: Les conteneurs partagent le noyau du système d'exploitation hôte, ce qui les rend plus efficaces que les machines virtuelles traditionnelles.
  • Évolutivité: Docker permet une mise à l'échelle facile des applications, s'adaptant à des charges variables en ajoutant ou en supprimant des conteneurs.
  • Contrôle de version: suivez les modifications et revenez facilement aux versions précédentes, améliorant ainsi le flux de travail de développement et de déploiement.

Debian est un choix privilégié pour s'associer à Docker pour plusieurs raisons :

  • La stabilité: Connu pour sa nature robuste et fiable, Debian assure une base stable pour les conteneurs Docker.
  • Sécurité: Des mises à jour régulières et une forte concentration sur la sécurité font de Debian un environnement sécurisé pour le déploiement d'applications.
  • Soutien communautaire: Une communauté vaste et active fournit une documentation et une assistance complètes, facilitant ainsi le dépannage.
  • Performance: Léger et efficace, Debian garantit le bon fonctionnement des conteneurs Docker avec une surcharge minimale.

Une fois l'introduction terminée, explorons comment installer Docker sur Debian, en utilisant les commandes du terminal et diverses méthodes pour que votre environnement soit opérationnel efficacement.

Étapes de pré-installation de Docker

La configuration de Docker CE sur votre système Debian est simple mais méticuleuse. Avant d'entrer dans le processus d'installation, préparons le terrain pour une exécution sans erreur.

Étape 1 : Supprimer les instances Docker précédentes

Note: Si la version par défaut de Docker n'est pas installée à partir du référentiel Debian, ignorez l'étape de suppression.

Tout d’abord, nous devons purger toutes les installations Docker préexistantes pour garantir un environnement sans conflit. Les versions antérieures de Docker pourraient interférer avec notre prochaine installation et entraîner des erreurs inattendues. Utilisez la commande suivante pour désinstaller les anciennes itérations Docker si elles existent :

sudo apt remove docker docker-engine docker.io containerd runc

S'il n'y a pas d'anciennes instances Docker à supprimer, le apt Le gestionnaire de paquets renverra un message indiquant qu'il n'y a rien à désinstaller.

Il est essentiel de se rappeler que la désinstallation de Docker ne supprime pas automatiquement les images, conteneurs, volumes ou réseaux Docker qui sont habituellement stockés dans /var/lib/docker/. Si vous avez l'intention de recommencer et d'éliminer toutes les données liées à Docker, utilisez ces commandes :

sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd

Avec cela, vous avez purgé tous les résidus potentiels de Docker qui pourraient influencer votre processus d'installation.

Étape 2 : Mettre à jour les packages Debian avant l'installation de Docker

Après avoir supprimé les anciennes versions de Docker, assurez-vous que votre système Debian est entièrement mis à jour lors de la prochaine étape. La mise à jour favorise la stabilité du système et garantit que vos packages système disposent de leurs dernières versions, minimisant ainsi les conflits et les vulnérabilités potentiels.

Pour mettre à jour la liste des packages disponibles et mettre à niveau ceux installés, exécutez la commande suivante :

sudo apt update && sudo apt upgrade

Cette commande actualisera d'abord la liste des packages disponibles (apt update), suivi de la mise à niveau de tous les packages obsolètes (apt upgrade).

Importer le référentiel Docker CE APT

Pour réussir l'installation de Docker CE, il est essentiel de configurer votre système Debian pour accéder au référentiel Docker. Cela implique d'intégrer le référentiel Docker dans votre système et d'importer la clé GPG correspondante. Ces étapes garantissent l'authenticité des packages Docker téléchargés et atténuent le risque de modifications non autorisées.

Étape 1 : Installer les packages initiaux pour Docker CE

Au départ, le système peut ne pas disposer des packages nécessaires à ce processus. Corrigeons cela en les installant. Exécutez la commande suivante pour installer ces packages critiques :

sudo apt install ca-certificates curl gnupg lsb-release dirmngr software-properties-common apt-transport-https

Ici, vous exploitez le apt gestionnaire de paquets pour installer une variété d'outils, comme ca-certificates pour la vérification du certificat, curl pour transférer des données, gnupg pour la gestion des clés, et d'autres nécessaires à ce processus.

Étape 2 : Ajouter la clé GPG Docker CE

Après avoir installé les packages requis, importons la clé Docker GPG. Cette clé permet à votre système de vérifier l'intégrité des packages téléchargés à partir du référentiel Docker.

Utilisez les commandes suivantes pour télécharger et enregistrer la clé GPG :

sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

Le curl La commande récupère la clé GPG du référentiel Docker, qui est ensuite traitée par gpg --dearmor pour le convertir au format binaire qui apt a besoin.

Étape 3 : Ajouter le référentiel Docker CE APT

Avec la clé GPG en place, vous pouvez désormais importer le référentiel Docker. Voici la commande pour accomplir cela :

echo \
 "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \
 $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
 sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

Cette commande d'apparence complexe ajoute le référentiel Docker à la liste des sources de votre système et le lie à la clé GPG précédemment téléchargée. Ce lien vérifie l'intégrité des packages téléchargés à partir du référentiel Docker, assurant ainsi la sécurité de votre système.

Finaliser l'installation de Docker

Cette section décrit les étapes nécessaires pour installer Docker CE sur votre système Debian. Vous apprendrez comment mettre à jour les informations du référentiel de votre système, installer Docker et vérifier l'installation en exécutant une image Docker de test. De plus, la section comprend une pratique de sécurité cruciale pour garantir la gestion sécurisée des conteneurs et des images Docker.

Étape 1 : Mettre à jour le cache Debian APT après l'importation du référentiel Docker CE

Avant de lancer l'installation de Docker, il est avantageux de s'assurer que les informations du référentiel de votre système sont à jour, en particulier avec le référentiel Docker récemment ajouté. Pour mettre à jour les informations du référentiel, exécutez la commande suivante :

sudo apt update

Cette commande actualise les listes de packages de votre système, y compris les détails sur les dernières versions des packages et leurs dépendances.

Étape 2 : installer Docker via la commande APT

Une fois les informations du référentiel du système mises à jour, vous pouvez procéder à l'installation de Docker. Voici la commande pour installer Docker ainsi que quelques plugins supplémentaires qui améliorent votre expérience Docker :

sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Dans cette commande, vous installez docker-ce (édition communautaire Docker), docker-ce-cli (l'interface de ligne de commande Docker), containerd.io (un runtime standard de l'industrie) et deux plugins Docker utiles pour créer des images et gérer des applications multi-conteneurs.

Étape 3 : Vérifier l'installation de Docker CE sur Debian

Après avoir terminé l'installation de Docker, vérifiez prudemment sa bonne installation en exécutant une image Docker de test :

sudo docker run hello-world

Cette commande extrait le hello-world image du référentiel Docker, crée un nouveau conteneur à partir de cette image et exécute le conteneur. Une fois exécuté, il imprime un message de bienvenue, confirmant ainsi que Docker fonctionne comme prévu.

Étape 4 : Exécuter Docker en tant qu'utilisateur non root

Pour des raisons de sécurité, configurez Docker pour qu'il s'exécute en tant qu'utilisateur non root. Cette pratique protège votre système contre les modifications accidentelles ou malveillantes qui pourraient causer des dommages. Une section ultérieure abordera cet aspect de manière plus approfondie.

Conseil de dépannage Docker

Lors de l'interaction avec les conteneurs et les images Docker, si vous rencontrez des problèmes, un redémarrage du système peut aider à les résoudre, en particulier ceux liés à la génération de chemin. Pour redémarrer votre système, utilisez la commande suivante :

reboot

Gestion de Docker via Systemd

Ce segment explorera comment manipuler le service Docker à l'aide de systemd. Systemd est un composant fondamental de nombreuses distributions Linux, dont Debian, et fournit des fonctionnalités pour administrer les processus et services système. Comme Docker installe une unité systemd sur votre système Debian, cela constitue un moyen efficace de gérer le service Docker.

Démarrage du service Docker via systemd

Pour utiliser Docker, le service doit être activement exécuté sur votre système Debian. Systemd facilite cela via la commande suivante :

systemctl start docker.service

Cette commande démarre le service Docker et le configure pour qu'il se lance automatiquement au démarrage du système, garantissant sa disponibilité après chaque démarrage.

Arrêtez le service Docker via systemd

Dans certaines circonstances, vous souhaiterez peut-être arrêter le service Docker. Systemd fournit une commande simple pour accomplir cela :

systemctl stop docker.service

Cette commande arrête le service Docker et l'empêche de démarrer automatiquement au prochain démarrage du système.

Redémarrez le service Docker via systemd

Vous souhaiterez peut-être parfois redémarrer le service Docker, en particulier lors du dépannage de problèmes liés à Docker. Systemd fournit la fonctionnalité permettant de redémarrer le service Docker avec cette commande :

systemctl restart docker.service

Cette commande arrête et démarre le service Docker, appliquant efficacement les configurations les plus récentes.

Vérifier l'état du service Docker via systemd

Pour vérifier l'état opérationnel du service Docker, qu'il soit en cours d'exécution, arrêté ou inactif, vous pouvez utiliser la commande systemd suivante :

systemctl status docker.service

La commande récupère et affiche l'état actuel du service Docker, fournissant un aperçu de son état de fonctionnement.

Activer le service Docker au démarrage du système Debian via systemd

Si vous souhaitez que le service Docker démarre automatiquement au démarrage du système, l'activer via systemd est la méthode préférée :

systemctl enable docker.service

Cette commande ajuste les paramètres du service Docker pour qu'il démarre automatiquement à chaque démarrage du système, offrant ainsi une disponibilité continue des fonctionnalités Docker.

Désactiver le service Docker au démarrage du système via systemd

Si vous décidez de ne pas démarrer automatiquement le service Docker lors du démarrage du système, systemd peut répondre à cette demande avec la commande suivante :

systemctl disable docker.service

Cette commande modifie les paramètres du service Docker, l'empêchant de se lancer automatiquement au démarrage du système.

À l'aide des commandes systemd, vous pouvez gérer efficacement le service Docker sur votre système Debian, offrant ainsi un degré élevé de contrôle sur le comportement opérationnel de Docker. Les sections suivantes approfondiront plus en détail l'utilisation et la gestion des conteneurs et des images Docker.

Exemples de configuration de Docker

Dans cette partie du guide, nous approfondissons la configuration des configurations Docker. Cela inclut la gestion de Docker en tant qu'utilisateur non root, ce qui améliore la sécurité, et la modification du pilote de journalisation par défaut pour mieux répondre à vos besoins.

Étape 1 : Exécuter Docker en tant qu'utilisateur non root

Bien que vous puissiez exécuter Docker en tant qu'utilisateur root, cela est déconseillé en raison des risques de sécurité potentiels et des modifications accidentelles de votre système hôte Debian. Au lieu de cela, gérez les opérations Docker sous un compte utilisateur non root pour améliorer la sécurité.

Pour créer un nouvel utilisateur spécifiquement pour la gestion Docker, exécutez les commandes suivantes :

sudo useradd -m dockeruser
sudo usermod -aG docker dockeruser

Ces commandes créent un nouvel utilisateur nommé « dockeruser » et ajoutent cet utilisateur au groupe Docker. Être membre du groupe Docker accorde à un utilisateur les autorisations nécessaires pour exécuter les commandes Docker.

Si vous souhaitez attribuer votre utilisateur actuel au groupe Docker, remplacez « dockeruser » par votre nom d'utilisateur. Par exemple, pour un utilisateur nommé « joshua », la commande serait :

sudo usermod -aG docker joshua

Après avoir effectué ces modifications, déconnectez-vous et reconnectez-vous pour appliquer les modifications. Parfois, vous devrez peut-être redémarrer le système pour propager ces modifications.

Pour confirmer que l'utilisateur est autorisé à exécuter les commandes Docker, utilisez la commande suivante :

docker ps

La commande doit afficher une liste des conteneurs Docker en cours d'exécution, signifiant une installation réussie.

Étape 2 : Modifier le pilote de journalisation Docker par défaut

Docker, par défaut, enregistre les événements au format de fichier JSON. Néanmoins, la flexibilité de Docker vous permet de modifier le pilote de journalisation par défaut dans un format différent ou même de le configurer pour transférer les journaux vers un système de gestion de journaux distant.

Pour modifier le pilote de journalisation par défaut, vous devez créer un nouveau fichier appelé daemon.json dans le /etc/docker/ annuaire. À l'aide d'un éditeur de texte tel que nano, exécutez la commande suivante :

sudo nano /etc/docker/daemon.json

Lorsque le fichier est ouvert, collez-y le contenu suivant :

{
  "log-driver": "syslog",
  "log-opts": {
    "syslog-address": "tcp://logs.example.com:514",
    "syslog-facility": "daemon",
    "tag": "{{.Name}}"
  }
}

Docker utilise le pilote Syslog dans cette configuration et relaie les journaux vers un serveur Syslog distant. Remplacez logs.example.com par l'adresse de votre serveur syslog.

Une fois la configuration en place, redémarrez le démon Docker à l'aide de la commande suivante pour appliquer les nouveaux paramètres du pilote de journalisation :

sudo systemctl restart docker.service

N'oubliez pas toutes les modifications apportées au daemon.json Le fichier nécessite un redémarrage du démon Docker pour que les modifications soient appliquées.

Exemples de commandes Docker

Dans ce segment, nous approfondissons l'utilisation des commandes Docker qui jouent un rôle essentiel dans la gestion efficace des conteneurs, des images, des réseaux et des volumes Docker. Le docker La commande fournit un ensemble d'outils robustes et polyvalents conçus pour simplifier et automatiser les tâches dans votre environnement Docker.

Fondamentaux des commandes Docker

Se familiariser avec l'interface de ligne de commande (CLI) Docker est essentiel pour maîtriser Docker. Vous trouverez ci-dessous un assortiment de commandes que vous rencontrerez fréquemment au cours de votre parcours Docker :

  • docker run: Lance un nouveau conteneur à partir d'une image.
  • docker ps: affiche tous les conteneurs en cours d'exécution.
  • docker images: Répertorie toutes les images disponibles localement.
  • docker build: Construit une nouvelle image à partir d'un Dockerfile.
  • docker stop : arrête un conteneur en cours d'exécution.
  • docker rm: Élimine un conteneur.
  • docker rmi: Supprime une image.
  • docker network: Administre les réseaux Docker.
  • docker volume: Gère les volumes Docker.

Chaque commande dispose d'un ensemble unique d'options qui vous permettent de modifier son comportement pour répondre à vos besoins. Explorons chaque commande et ses options respectives.

Le exécution du docker Commande

Le docker run La commande crée un nouveau conteneur à partir d'une image spécifiée. Par exemple, pour lancer un conteneur à partir de l'image Debian et y ouvrir un shell interactif, utilisez la commande suivante :

docker run -it debian:latest /bin/bash

Le docker ps Commande

Le docker ps La commande est déployée pour répertorier tous les conteneurs actuellement actifs. Il révèle des informations précieuses sur chaque conteneur, notamment l'ID du conteneur, l'image associée et l'état d'exécution. Pour obtenir une liste de tous les conteneurs en cours d'exécution, tapez simplement :

docker ps

Le Images : docker Commande

Le docker images La commande est chargée de répertorier toutes les images Docker disponibles localement. Il renvoie des informations sur chaque image, y compris son ID, le référentiel associé et sa balise :

docker images

Le construction de docker Commande

Le docker build La commande est utilisée pour créer une nouvelle image Docker à partir d’un fichier Docker. Un Dockerfile est essentiellement un script contenant des instructions pour construire une image Docker. Par exemple, pour créer une nouvelle image nommée « monimage » à l'aide du Dockerfile dans le répertoire actuel, vous utiliserez la commande suivante :

docker build -t myimage:latest .

Le arrêt du docker Commande

Le docker stop La commande termine gracieusement un conteneur Docker en cours d’exécution. Vous pouvez cibler le conteneur souhaité à l'aide de son ID. Par exemple, pour arrêter un conteneur avec l'ID « abcdefg », vous utiliserez :

docker stop abcdefg

Le Docker RM Commande

Utilisez le docker rm commande pour supprimer un conteneur Docker. Comme le stop commande, spécifiez l’ID du conteneur que vous souhaitez supprimer. Par exemple:

docker rm abcdefg

Le docker rmi Commande

Utilisez le docker rmi commande pour supprimer les images Docker. Identifiez l'image que vous souhaitez supprimer par son identifiant. Par exemple:

docker rmi 1234567

Le réseau Docker Commande

Le docker network La commande est un outil polyvalent pour créer, répertorier et supprimer des réseaux Docker. Par exemple, pour créer un nouveau réseau nommé « monréseau », vous utiliserez :

docker network create mynetwork

Le volume du menu fixe Commande

Finalement, le docker volume La commande offre des fonctionnalités pour gérer les volumes Docker. Par exemple, pour créer un nouveau volume nommé « monvolume », vous utiliserez :

docker volume create myvolume

Navigation dans la gestion des conteneurs Docker

La gestion efficace des conteneurs Docker influence considérablement la fonctionnalité et la longévité d'un environnement Docker. La commande docker fournit une variété de sous-commandes cruciales pour manipuler les conteneurs Docker. Ces sous-commandes facilitent la création, le fonctionnement, la modification et la suppression de conteneurs. Que vous soyez un développeur chevronné ou un débutant en conteneurisation, la compréhension de ces commandes peut améliorer considérablement votre interaction Docker.

Commandes principales pour la gestion des conteneurs Docker

La commande docker ps est un outil essentiel dans votre boîte à outils Docker pour énumérer tous les conteneurs en cours d'exécution. En exécutant cette commande, vous pouvez voir tous les conteneurs actifs, leur image correspondante, leur statut et leur ID de conteneur unique.

docker ps

Pour mettre fin à un conteneur Docker actuellement actif, le docker stop la commande est déployée. Vous ajoutez l'ID ou le nom unique du conteneur que vous souhaitez arrêter.

docker stop abcdefg

Le docker rm La commande est utilisée pour éradiquer un conteneur Docker. Cette commande, comme docker stop, accepte l'ID ou le nom unique du conteneur comme argument.

docker rm abcdefg

Il est crucial de noter que la suppression d'un conteneur annule toutes les modifications apportées. Vous devez créer une nouvelle image à partir du conteneur modifié à l'aide de la commande « docker commit » pour conserver les modifications.

Conserver les modifications du conteneur à l'aide de docker commit

Lorsque vous travaillez avec des conteneurs Docker, vous devrez peut-être personnaliser un conteneur et conserver ces modifications en tant que nouvelle image. Ceci peut être accompli en utilisant le docker commit commande.

Initiez un nouveau conteneur à l'aide d'une image de base et apportez les modifications nécessaires au sein de ce conteneur. Par exemple, envisagez de démarrer un nouveau conteneur à partir de l'image Debian et d'ouvrir un shell à l'intérieur du conteneur :

docker run -it --name mycontainer debian:latest /bin/bash

Vous pouvez effectuer diverses tâches dans ce nouveau conteneur, comme modifier des fichiers de configuration ou installer de nouveaux logiciels. Après avoir effectué les modifications souhaitées, utilisez le docker commit commande pour produire une nouvelle image encapsulant ces modifications. Pour créer une nouvelle image nommée « monimage » avec les modifications apportées dans le conteneur « monconteneur », exécutez la commande suivante :

docker commit mycontainer myimage:latest

Vous possédez désormais une image nommée « monimage », intégrant les modifications apportées dans le conteneur « monconteneur ». Utilisez cette nouvelle image pour générer et exploiter de nouveaux conteneurs avec des configurations ou des logiciels mis à jour.

N'oubliez pas que la commande docker commit enregistre uniquement les modifications apportées au système de fichiers du conteneur, sans conserver les modifications apportées au réseau et au stockage. Si la conservation des modifications apportées à la mise en réseau et au stockage est nécessaire, envisagez d'utiliser d'autres commandes Docker telles que Docker Network et Docker Volume.

Emballer

Nous avons abordé l'installation et la gestion de Docker Community Edition (CE) sur une distribution Debian Linux tout au long de notre discussion. Docker CE apporte tous les avantages de la conteneurisation, permettant aux développeurs de créer, de livrer et d'exécuter des applications distribuées dans différents environnements. Les commandes Docker et les cas d'utilisation abordés ici offrent des connaissances de base pour la gestion des conteneurs Docker. Alors que l'article abordait les commandes Docker fondamentales telles que docker run, docker ps, docker rm, et d'autres.

N'oubliez pas que l'écosystème Docker est beaucoup plus large, avec de nombreuses commandes et options que vous pouvez explorer pour affiner votre expérience Docker.

Joshua James
Suis-moi
Les derniers articles par Joshua James (tout voir)

Laissez un commentaire