DOCKER - 4 5 Push sur Docker Hub
Pour pusher une image vers Docker Hub, vous devez d'abord vous authentifier localement. Utilisez la commande docker login qui vous demandera votre nom d'utilisateur et votre mot de passe Docker Hub. Cette authentification est stockée localement dans votre configuration Docker et vous permet de pouvoir publier des images. Vous pouvez vous déconnecter à tout moment avec docker logout.
Format de tag et création de dépôt
Avant de pusher, votre image doit être taguée au bon format : username/repository:tag. Par exemple : myusername/myapp:1.0. Utilisez docker tag pour réassocier votre image existante au nouveau nom. Quand vous pushez une image avec un format de nom correcte, Docker Hub crée automatiquement le dépôt correspondant s'il n'existe pas. Pour créer un dépôt privé, il est recommandé de le créer d'abord manuellement sur Docker Hub et de spécifier son statut privé.
Push et optimisation
Lancez docker push username/myapp:1.0 pour publier votre image. Docker détecte les couches qui existent déjà sur Docker Hub et ne pousse que les nouvelles couches, optimisant ainsi la bande passante. Vous pouvez créer plusieurs tags pour la même image (comme latest et 1.0 pointant vers le même ID). Après le push, vérifiez que votre image apparaît bien sur votre tableau de bord Docker Hub.
En résumé
Cette leçon explique comment pousser ses images Docker vers Docker Hub. Après s'être connecté via `docker login`, vous pouvez taguer vos images au format `username/nomimage:tag` et les publier avec `docker push`. Docker Hub crée automatiquement le dépôt lors du premier push, et vous pouvez avoir plusieurs tags pointant vers le même identifiant d'image.
Points clés
- Se connecter à Docker Hub depuis la ligne de commande avec `docker login` pour autoriser les pushes d'images
- Tagger vos images au format spécifique `username/nomimage:tag` (sans votre identifiant Docker, le push échouera)
- Utiliser `docker push` pour envoyer l'image vers Docker Hub; le dépôt est créé automatiquement lors du premier push
- Le tag `latest` est le tag par défaut appliqué si aucun tag n'est spécifié
- Une même image (même identifiant) peut avoir plusieurs tags différents; les couches existantes ne sont pas retéléchargées
- Créer un dépôt privé sur Docker Hub avant le push pour garder votre image non publique sur Internet
Questions fréquentes
Pourquoi mon `docker push` échoue avec un message d'accès refusé ?
Vous ne devez pas être connecté à Docker Hub. Exécutez d'abord `docker login` pour vous authentifier avec vos identifiants Docker Hub.
Quel format dois-je utiliser pour taguer mon image avant de la pusher sur Docker Hub ?
Le format obligatoire est `nomdutilisateur/nomimage:tag`. Par exemple : `monusername/monapp:v1.0`. Sans votre identifiant Docker, le push ne fonctionnera pas.
Si je pousse la même image avec deux tags différents, vais-je l'uploader deux fois ?
Non. Si l'image a le même identifiant (ID) mais des tags différents, Docker Hub reconnaît que les couches existent déjà et ne les retélécharge qu'une fois. Vous aurez simplement deux tags pointant vers la même image.