Installer Docker Engine sur CentOS

Temps de lecture estimé : 10 minutes

Pour commencer à utiliser Docker Engine sur CentOS, assurez-vous de remplir les conditions préalables, puis installez Docker.

Prérequis

Prérequis du système d’exploitation

Pour installer Docker Engine, vous avez besoin d’une version maintenue de CentOS 7 ou 8.Les versions archivées ne sont pas prises en charge ou testées.

Le centos-extras dépôt doit être activé. Ce dépôt est activé par défaut, mais si vous l’avez désactivé, vous devez le ré-activer.

Le overlay2 pilote de stockage est recommandé.

Désinstaller les anciennes versions

Les anciennes versions de Docker étaient appelées docker ou docker-engine. Si ceux-ci sontinstallés, désinstallez-les, ainsi que les dépendances associées.

$ sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine

C’est OK si yum signale qu’aucun de ces paquets n’est installé.

Le contenu de /var/lib/docker/, y compris les images, les conteneurs, les volumes et les réseaux, est préservé. Le paquet Docker Engine s’appelle désormais docker-ce.

Méthodes d’installation

Vous pouvez installer Docker Engine de différentes manières, selon vos besoins :

  • La plupart des utilisateurs configurent les dépôts de Docker et s’installent à partir de ceux-ci, pour faciliter les tâches d’installation et de mise à niveau. C’est l’approche recommandée.
  • Certains utilisateurs téléchargent le paquet RPM et l’installent manuellement et gèrent les mises à niveau complètement manuellement. Cela est utile dans des situations telles que l’installation deDocker sur des systèmes à air comprimé sans accès à Internet.

  • Dans les environnements de test et de développement, certains utilisateurs choisissent d’utiliser des scripts de commodité automatisés pour installer Docker.

Installation à l’aide du référentiel

Avant d’installer Docker Engine pour la première fois sur une nouvelle machine hôte, vous devez configurer le référentiel Docker. Par la suite, vous pouvez installer et mettre à jour Docker à partir du référentiel.

Configurer le référentiel

Installer le paquet yum-utils (qui fournit l’yum-config-managerutilité) et configurer le référentiel stable.

$ sudo yum install -y yum-utils$ sudo yum-config-manager \ --add-repo \ https://download.docker.com/linux/centos/docker-ce.repo

Optionnel : Activez les dépôts nocturnes ou de test.

Ces dépôts sont inclus dans le fichier docker.repo ci-dessus mais sont désactivés par défaut. Vous pouvez les activer en même temps que le dépôt stable. La commande suivante active le dépôt nocturne.

$ sudo yum-config-manager --enable docker-ce-nightly

Pour activer le canal de test, exécutez la commande suivante :

$ sudo yum-config-manager --enable docker-ce-test

Vous pouvez désactiver le dépôt de nuit ou de test en exécutant la commandeyum-config-manager avec le drapeau --disable. Pour le réactiver, utilisez le drapeau --enable. La commande suivante désactive le dépôt nocturne.

$ sudo yum-config-manager --disable docker-ce-nightly

En savoir plus sur les canaux nocturnes et de test.

Installer Docker Engine

  1. Installer la dernière version de Docker Engine et de containerd, ou passer à l’étape suivante pour installer une version spécifique :

    $ sudo yum install docker-ce docker-ce-cli containerd.io

    Si vous êtes invité à accepter la clé GPG, vérifiez que l’empreinte digitale correspond060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35, et si oui, acceptez-la.

    Vous avez plusieurs dépôts Docker ?

    Si vous avez activé plusieurs dépôts Docker, l’installationou la mise à jour sans spécifier de version dans la commande yum install ouyum update installe toujours la version la plus élevée possible,ce qui peut ne pas convenir à vos besoins de stabilité.

    Docker est installé mais pas démarré. Le groupe docker est créé, mais aucun utilisateur n’est ajouté au groupe.

  2. Pour installer une version spécifique de Docker Engine, listez les versions disponibles dans le repo, puis sélectionnez et installez :

    a. Listez et triez les versions disponibles dans votre repo. Cet exemple trie les résultats par numéro de version, du plus élevé au plus bas, et est tronqué :

    $ yum list docker-ce --showduplicates | sort -rdocker-ce.x86_64 3:18.09.1-3.el7 docker-ce-stabledocker-ce.x86_64 3:18.09.0-3.el7 docker-ce-stabledocker-ce.x86_64 18.06.1.ce-3.el7 docker-ce-stabledocker-ce.x86_64 18.06.0.ce-3.el7 docker-ce-stable

    La liste renvoyée dépend des dépôts activés, et est spécifique à votre version de CentOS (indiquée par le suffixe .el7 dans cet exemple).

    b. Installez une version spécifique par son nom de paquetage pleinement qualifié, qui est le nom du paquetage (docker-ce) plus la chaîne de version (2e colonne) en commençant par les premiers deux points (:), jusqu’au premier tiret, séparés par un tiret (-). Par exemple, docker-ce-18.09.1.

    $ sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io

    Docker est installé mais pas démarré. Le groupe docker est créé, mais aucun utilisateur n’est ajouté au groupe.

  3. Démarrer Docker.

    $ sudo systemctl start docker
  4. Vérifier que Docker Engine est installé correctement en exécutant le hello-worldimage.

    $ sudo docker run hello-world

    Cette commande télécharge une image de test et l’exécute dans un conteneur. Lorsque leconteneur s’exécute, il imprime un message d’information et sort.

  5. Docker Engine est installé et fonctionne. Vous devez utiliser sudo pour exécuter les Dockercommandes. Continuez vers Linux postinstall pour allownon-privileged users to run Docker commands et pour d’autres étapes de configuration facultatives.

    Upgrade Docker Engine

    Pour mettre à niveau Docker Engine, suivez les instructions d’installation,en choisissant la nouvelle version que vous voulez installer.

    Installer à partir d’un paquet

    Si vous ne pouvez pas utiliser le dépôt de Docker pour installer Docker, vous pouvez télécharger le fichier.rpm de votre version et l’installer manuellement. Vous devez téléchargerun nouveau fichier chaque fois que vous voulez mettre à niveau le moteur Docker.

    1. Allez sur https://download.docker.com/linux/centos/and choisissez votre version de CentOS. Puis naviguez jusqu’à x86_64/stable/Packages/et téléchargez le fichier .rpm pour la version de Docker que vous voulez installer.

      Note : Pour installer un paquet nightly ou test (préversion),changez le mot stable dans l’URL ci-dessus en nightly ou test.Découvrez les canaux nocturnes et de test.

    2. Installer Docker Engine, en changeant le chemin ci-dessous par le chemin où vous avez téléchargé le paquet Docker.

      $ sudo yum install /path/to/package.rpm

      Docker est installé mais pas démarré. Le groupe docker est créé, mais des nousers sont ajoutés au groupe.

    3. Démarrer Docker.

      $ sudo systemctl start docker
    4. Vérifier que Docker Engine est installé correctement en exécutant le hello-worldimage.

      $ sudo docker run hello-world

      Cette commande télécharge une image de test et l’exécute dans un conteneur. Lorsque leconteneur s’exécute, il imprime un message d’information et sort.

    Docker Engine est installé et fonctionne. Vous devez utiliser sudo pour exécuter les commandes Docker.Continuez à Étapes de post-installation pour Linux pour autoriser les utilisateurs non privilégiés à exécuter les commandes Docker et pour d’autres étapes de configuration facultatives.

    Mise à niveau de Docker Engine

    Pour mettre à niveau Docker Engine, téléchargez le fichier de package plus récent et répétez la procédure d’installation, en utilisant yum -y upgradeau lieu de yum -y install, et en pointant vers le nouveau fichier.

    Installation à l’aide du script de commodité

    Docker fournit des scripts de commodité à get.docker.comet test.docker.com pour installer des versions de bord et de test de Docker Engine – Community dans des environnements de développement rapidement et de manière non interactive. Le code source de ces scripts se trouve dans le dépôtdocker-install.L’utilisation de ces scripts n’est pas recommandée pour les environnements de production, et vous devez comprendre les risques potentiels avant de les utiliser :

    • Les scripts nécessitent des privilèges root ou sudo pour s’exécuter. Par conséquent,vous devez examiner et auditer soigneusement les scripts avant de les exécuter.
    • Les scripts tentent de détecter votre distribution et votre version de Linux etconfigurent votre système de gestion des paquets à votre place. En outre, les scripts ne vous permettent pas de personnaliser les paramètres d’installation. Cela peut conduire à une configuration non prise en charge, que ce soit du point de vue de Docker ou des directives et normes de votre propre organisation.
    • Les scripts installent toutes les dépendances et recommandations du gestionnaire de paquets sans demander de confirmation. Cela peut installer un grand nombre de paquets, en fonction de la configuration actuelle de votre machine hôte.
    • Le script ne fournit pas d’options pour spécifier la version de Docker à installer,et installe la dernière version qui est publiée dans le canal « edge ».
    • N’utilisez pas le script de commodité si Docker a déjà été installé sur la machine hôte à l’aide d’un autre mécanisme.

    Cet exemple utilise le script de get.docker.com pourinstaller la dernière version de Docker Engine – Community sur Linux. Pour installer la dernière version de test, utilisez plutôt test.docker.com. Dans chacune des commandes ci-dessous, remplacez chaque occurrence de get par test.

    Avertissement:

    Toujours examiner les scripts téléchargés sur Internet avant de les exécuter localement.

    $ curl -fsSL https://get.docker.com -o get-docker.sh$ sudo sh get-docker.sh<...>

    Si vous souhaitez utiliser Docker en tant qu’utilisateur non root, vous devez maintenant envisager d’ajouter votre utilisateur au groupe « docker » avec quelque chose comme :

    $ sudo usermod -aG docker <your-user>

    N’oubliez pas de vous déconnecter et de vous reconnecter pour que cela prenne effet !

    Avertissement:

    Ajouter un utilisateur au groupe « docker » lui accorde la capacité d’exécuter des conteneursce qui peut être utilisé pour obtenir les privilèges root sur l’hôte Docker. Consultez la section Surface d’attaque du démon Docker pour plus d’informations.

    Le moteur Docker – Communauté est installé. Il démarre automatiquement sur les distributions basées sur DEB. Sur les distributionsRPM basées, vous devez le démarrer manuellement en utilisant la commande appropriéesystemctl ou service. Comme l’indique le message, les utilisateurs non root ne peuvent pas lancer les commandes Docker par défaut.

    Note:

    Pour installer Docker sans privilèges root, voirRun the Docker daemon as a non-root user (Rootless mode).

    Mettre à niveau Docker après avoir utilisé le script de commodité

    Si vous avez installé Docker à l’aide du script de commodité, vous devez mettre à niveau Dockeren utilisant directement votre gestionnaire de paquets. Il n’y a aucun avantage à réexécuter le script de commodité, et il peut causer des problèmes s’il tente de réadditionner des dépôts qui ont déjà été ajoutés à la machine hôte.

    Désinstaller Docker Engine

    1. Désinstaller les paquets Docker Engine, CLI et Containerd :

      $ sudo yum remove docker-ce docker-ce-cli containerd.io
    2. Les images, conteneurs, volumes ou fichiers de configuration personnalisés sur votre hôtene sont pas automatiquement supprimés. Pour supprimer toutes les images, tous les conteneurs et tous les volumes :

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

      Vous devez supprimer manuellement tout fichier de configuration modifié.

      • Continuez vers Étapes de post-installation pour Linux.
      • Revoir les sujets dans Développer avec Docker pour apprendre à construire de nouvelles applications en utilisant Docker.

      exigences, apt, installation, centos, rpm, installer, désinstaller, mettre à niveau, mettre à jour.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *