
Configuration minimale et connexion à un registre (Docker Hub)
Apprenez la configuration minimale post-installation de Docker et comment vous connecter à Docker Hub, le registre d'images essentiel, via la commande `docker login` pour accéder aux images.
Préparer Docker pour l'interaction avec les registres
Une fois Docker installé et sa fonctionnalité de base vérifiée avec `hello-world`, l'étape suivante consiste à s'assurer que vous pouvez interagir efficacement avec les registres d'images, en particulier Docker Hub. Bien que Docker fonctionne souvent "prêt à l'emploi" pour télécharger des images publiques sans configuration supplémentaire, comprendre comment s'authentifier est essentiel pour accéder à des images privées ou pour partager vos propres créations.
La "configuration minimale" dans ce contexte concerne principalement l'authentification auprès d'un registre. Docker Hub est le registre public par défaut utilisé par Docker lorsque vous ne spécifiez pas d'autre source pour une image. Il héberge des milliers d'images officielles et communautaires, ce qui en fait une ressource incontournable.
Cette section se concentre sur la manière de se connecter (et se déconnecter) de Docker Hub en utilisant la ligne de commande. Bien que Docker offre des options de configuration plus avancées (via les paramètres de Docker Desktop ou le fichier `daemon.json` sur Linux pour des aspects comme les proxys, les miroirs de registre, etc.), la connexion à Docker Hub est l'étape de configuration la plus courante et immédiate pour la plupart des utilisateurs.
Docker Hub : votre portail vers les images
Docker Hub (hub.docker.com) est le plus grand registre d'images de conteneurs au monde. Il joue un rôle central dans l'écosystème Docker. Vous y trouverez les images officielles pour de nombreux logiciels (comme `python`, `node`, `nginx`, `ubuntu`, `mysql`, etc.), ainsi que des images partagées par la communauté et des entreprises.
Pour télécharger des images publiques depuis Docker Hub (par exemple, `docker pull nginx`), aucune connexion n'est généralement requise. Docker est configuré par défaut pour chercher les images sur Docker Hub si aucun nom de registre n'est précisé.
Cependant, une connexion devient nécessaire dans deux cas principaux :
- Lorsque vous souhaitez télécharger (pull) des images depuis des répertoires privés sur Docker Hub (par exemple, des images spécifiques à votre entreprise ou à un projet personnel non public).
- Lorsque vous souhaitez envoyer (push) une image que vous avez construite localement vers Docker Hub, que ce soit dans un répertoire public ou privé. Partager vos propres images nécessite une authentification.
Se connecter avec `docker login`
La commande pour vous authentifier auprès d'un registre Docker est
docker login. Pour vous connecter spécifiquement à Docker Hub (qui est le registre par défaut), vous pouvez simplement exécuter :docker loginDocker vous demandera alors votre nom d'utilisateur (Username) Docker Hub et votre mot de passe (Password). Entrez les informations d'identification de votre compte Docker Hub.
Attention : Pour des raisons de sécurité, il est fortement recommandé de ne pas utiliser votre mot de passe Docker Hub directement. Préférez utiliser un jeton d'accès personnel (Personal Access Token - PAT). Vous pouvez générer un PAT depuis les paramètres de sécurité de votre compte Docker Hub. Lorsque la commande `docker login` vous demande votre mot de passe, entrez le PAT à la place. C'est plus sécurisé car vous pouvez créer des jetons avec des permissions limitées et les révoquer facilement si nécessaire.Si l'authentification réussit, Docker affichera un message comme `Login Succeeded`. Vos informations d'identification seront alors stockées localement de manière sécurisée (généralement en utilisant les gestionnaires d'informations d'identification natifs de votre système d'exploitation comme le Trousseau d'accès sur macOS, Credential Manager sur Windows, ou pass/gnome-keyring/kwallet sur Linux). Cela signifie que vous n'aurez pas besoin de vous reconnecter à chaque commande `docker pull` (pour les images privées) ou `docker push`.
Si vous devez vous connecter à un registre privé autre que Docker Hub (par exemple, un registre hébergé par votre entreprise à l'adresse `myregistry.example.com`), vous devez spécifier l'adresse du serveur :
docker login myregistry.example.comLe processus sera similaire, vous invitant à entrer un nom d'utilisateur et un mot de passe (ou un jeton) valides pour ce registre spécifique.
Se déconnecter avec `docker logout`
Si vous souhaitez supprimer les informations d'identification stockées pour un registre, vous pouvez utiliser la commande
docker logout.Pour vous déconnecter de Docker Hub (le registre par défaut) :
docker logoutPour vous déconnecter d'un registre privé spécifique :
docker logout myregistry.example.comCette commande supprimera les informations d'identification stockées pour le registre spécifié. Vous devrez à nouveau utiliser `docker login` si vous avez besoin de vous authentifier ultérieurement auprès de ce registre.
La déconnexion est particulièrement utile sur des machines partagées ou lorsque vous avez terminé de travailler avec des images nécessitant une authentification spécifique et que vous souhaitez vous assurer que vos accès ne restent pas configurés.