Voici les instructions pour l'installation de Docker sur une distribution CentOS. Nous allons utiliser le dépôt officiel de Docker afin d'obtenir les paquets les plus récents plutôt que d'utiliser ceux présents avec la distribution. Nous ne couvrirons donc pas l'installation via les paquets de CentOS.
Avant de commencer l'installation, vous devez vérifier que vous disposez d'un noyau 64 bits Linux 3.10 ou supérieur. Docker ne fonctionne pas sur un noyau 32 bits. Nous vous recommendons également de faire une sauvegarde.
Installation du moteur de Docker
On commence par s'assurer que l'on dispose des dernières mises à jour de notre système :
sudo yum -y update
Ensuite on ajoute le dépôt Docker au système :
sudo tee /etc/yum.repos.d/docker.repo <<-'EOF' [dockerrepo] name=Docker Repository baseurl=https://yum.dockerproject.org/repo/main/centos/7/ enabled=1 gpgcheck=1 gpgkey=https://yum.dockerproject.org/gpg EOF
Puis on lance l'installation proprement dite du moteur de Docker :
sudo yum -y install docker-engine
Il faut ensuite activer et lancer le service Docker. L'activation permet de faire en sorte qu'il soit lancé automatiquement à chaque démarrage du système.
sudo systemctl enable docker.service sudo systemctl start docker.service
Vérification de l'installation
Pour vérifier que le moteur Docker a bien été installé, on va lancer la commande suivante :
sudo docker run --rm hello-world
Le moteur Docker devrait automatiquement télécharger l'image "hello-world" et l'exécuter.
Unable to find image 'hello-world:latest' locally latest: Pulling from library/hello-world c04b14da8d14: Pull complete Digest: sha256:0256e8a36e2070f7bf2d0b0763dbabdd67798512411de4cdcf9431a1feb60fd9 Status: Downloaded newer image for hello-world:latest Hello from Docker! This message shows that your installation appears to be working correctly. To generate this message, Docker took the following steps: 1. The Docker client contacted the Docker daemon. 2. The Docker daemon pulled the "hello-world" image from the Docker Hub. 3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading. 4. The Docker daemon streamed that output to the Docker client, which sent it to your terminal. To try something more ambitious, you can run an Ubuntu container with: $ docker run -it ubuntu bash Share images, automate workflows, and more with a free Docker Hub account: https://hub.docker.com For more examples and ideas, visit: https://docs.docker.com/engine/userguide/
Création d'un groupe docker
Le daemon docker est attaché à un socket Unix au lieu d'un port TCP. Par défaut, l'utilisateur root est propriétaire de ce socket Unix, et les autres utilisateurs peuvent y accéder avec "sudo" ou préférablement avec une commande "su -c". Pour permettre à un utilisateur de lancer des commandes Docker, il suffit de l'ajouter au groupe "docker" qui a été créé automatiquement durant l'installation du docker-engine.
Vous pouvez vous assurer que le groupe "docker" a bien été créé en exécutant la commande :
sudo getent group | grep docker
Si le groupe n'existe pas, vous pouvez le créer avec la commande :
sudo groupadd docker
Ensuite, on ajoute son nom d'utilisateur au groupe :
sudo usermod -aG docker [nom_utilisateur]
Il est nécessaire de se déconnecter pour que les changements de groupes soient pris en compte.
On peut ensuite se reconnecter, et vérifier que l'on peut lancer la commande suivante sans être utilisateur root :
$ docker run hello-world
Docker est maintenant installé sur votre système.