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.
-
Dans les environnements de test et de développement, certains utilisateurs choisissent d’utiliser des scripts de commodité automatisés pour installer Docker.
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.
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-manager
utilité) 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 commande
yum-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
-
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 correspond
060A 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. -
Démarrer Docker.
$ sudo systemctl start docker
-
Vérifier que Docker Engine est installé correctement en exécutant le
hello-world
image.$ 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.
-
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 ennightly
outest
.Découvrez les canaux nocturnes et de test. -
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. -
Démarrer Docker.
$ sudo systemctl start docker
-
Vérifier que Docker Engine est installé correctement en exécutant le
hello-world
image.$ 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.
- Les scripts nécessitent des privilèges
root
ousudo
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.
-
Désinstaller les paquets Docker Engine, CLI et Containerd :
$ sudo yum remove docker-ce docker-ce-cli containerd.io
-
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.
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.
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.
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 upgrade
au 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 :
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.