Démarrage rapide Docker Hub
Docker Hub fournit une vaste bibliothèque d'images et de ressources pré-construites, accélérant les flux de travail de développement et réduisant le temps de configuration. Vous pouvez construire sur des images pré-construites de Docker Hub puis utiliser des dépôts pour partager et distribuer vos propres images avec votre équipe ou des millions d'autres développeurs.
Ce guide vous montre comment trouver et exécuter une image pré-construite. Il vous guide ensuite dans la création d'une image personnalisée et son partage via Docker Hub.
Prérequis
Étape 1 : Trouvez une image dans la bibliothèque de Docker Hub
Vous pouvez rechercher du contenu dans Docker Hub lui-même, dans le Tableau de bord Docker Desktop, ou en utilisant la CLI.
Pour rechercher ou parcourir du contenu sur Docker Hub :
-
Naviguez vers la page Explorer de Docker Hub.
Sur la page Explorer, vous pouvez parcourir par catalogue ou catégorie, ou utiliser la recherche pour trouver rapidement du contenu.
-
Sous Catégories, sélectionnez Serveurs web.
Après l'affichage des résultats, vous pouvez filtrer davantage les résultats en utilisant les filtres sur le côté gauche de la page.
-
Dans les filtres, sélectionnez Image officielle Docker.
Filtrer par Contenu de confiance vous assure de voir uniquement des images de haute qualité et sécurisées organisées par Docker et des partenaires de publication vérifiés.
-
Dans les résultats, sélectionnez l'image nginx.
Sélectionner l'image ouvre la page de l'image où vous pouvez en apprendre plus sur comment utiliser l'image. Sur la page, vous trouverez également la commande
docker pull
pour télécharger l'image.
-
Ouvrez le Tableau de bord Docker Desktop.
-
Sélectionnez la vue Docker Hub.
Dans la vue Docker Hub, vous pouvez parcourir par catalogue ou catégorie, ou utiliser la recherche pour trouver rapidement du contenu.
-
Laissez la boîte de recherche vide puis sélectionnez Recherche.
Les résultats de recherche sont affichés avec des filtres supplémentaires maintenant à côté de la boîte de recherche.
-
Sélectionnez l'icône de filtre de recherche, puis sélectionnez Image officielle Docker et Serveurs web.
-
Dans les résultats, sélectionnez l'image nginx.
-
Ouvrez une fenêtre de terminal.
TipLe Tableau de bord Docker Desktop contient un terminal intégré. En bas du Tableau de bord, sélectionnez >_ Terminal pour l'ouvrir.
-
Dans le terminal, exécutez la commande suivante.
$ docker search --filter is-official=true nginx
Contrairement aux interfaces Docker Hub et Docker Desktop, vous ne pouvez pas parcourir par catégorie en utilisant la commande
docker search
. Pour plus de détails sur la commande, voir docker search.
Maintenant que vous avez trouvé une image, il est temps de la télécharger et de l'exécuter sur votre appareil.
Étape 2 : Téléchargez et exécutez une image depuis Docker Hub
Vous pouvez exécuter des images depuis Docker Hub en utilisant la CLI ou le Tableau de bord Docker Desktop.
-
Dans le Tableau de bord Docker Desktop, sélectionnez l'image nginx dans la vue Docker Hub. Pour plus de détails, voir Étape 1 : Trouvez une image dans la bibliothèque de Docker Hub.
-
Sur l'écran nginx, sélectionnez Exécuter.
Si l'image n'existe pas sur votre appareil, elle est automatiquement téléchargée depuis Docker Hub. Le téléchargement de l'image peut prendre quelques secondes ou minutes selon votre connexion. Après que l'image ait été téléchargée, une fenêtre apparaît dans Docker Desktop et vous pouvez spécifier les options d'exécution.
-
Dans l'option Port hôte, spécifiez
8080
. -
Sélectionnez Exécuter.
Les journaux du conteneur apparaissent après le démarrage du conteneur.
-
Sélectionnez le lien 8080:80 pour ouvrir le serveur, ou visitez http://localhost:8080 dans votre navigateur web.
-
Dans le Tableau de bord Docker Desktop, sélectionnez le bouton Arrêter pour arrêter le conteneur.
-
Ouvrez une fenêtre de terminal.
TipLe Tableau de bord Docker Desktop contient un terminal intégré. En bas du Tableau de bord, sélectionnez >_ Terminal pour l'ouvrir.
-
Dans votre terminal, exécutez la commande suivante pour télécharger et exécuter l'image Nginx.
$ docker run -p 8080:80 --rm nginx
La commande
docker run
télécharge et exécute automatiquement l'image sans avoir besoin d'exécuter d'aborddocker pull
. Pour en apprendre plus sur la commande et ses options, voir la référence CLIdocker run
. Après avoir exécuté la commande, vous devriez voir une sortie similaire à la suivante.Unable to find image 'nginx:latest' locally latest: Pulling from library/nginx a480a496ba95: Pull complete f3ace1b8ce45: Pull complete 11d6fdd0e8a7: Pull complete f1091da6fd5c: Pull complete 40eea07b53d8: Pull complete 6476794e50f4: Pull complete 70850b3ec6b2: Pull complete Digest: sha256:28402db69fec7c17e179ea87882667f1e054391138f77ffaf0c3eb388efc3ffb Status: Downloaded newer image for nginx:latest /docker-entrypoint.sh: /docker-entrypoint.d/ is not empty, will attempt to perform configuration /docker-entrypoint.sh: Looking for shell scripts in /docker-entrypoint.d/ /docker-entrypoint.sh: Launching /docker-entrypoint.d/10-listen-on-ipv6-by-default.sh 10-listen-on-ipv6-by-default.sh: info: Getting the checksum of /etc/nginx/conf.d/default.conf 10-listen-on-ipv6-by-default.sh: info: Enabled listen on IPv6 in /etc/nginx/conf.d/default.conf /docker-entrypoint.sh: Sourcing /docker-entrypoint.d/15-local-resolvers.envsh /docker-entrypoint.sh: Launching /docker-entrypoint.d/20-envsubst-on-templates.sh /docker-entrypoint.sh: Launching /docker-entrypoint.d/30-tune-worker-processes.sh /docker-entrypoint.sh: Configuration complete; ready for start up 2024/11/07 21:43:41 [notice] 1#1: using the "epoll" event method 2024/11/07 21:43:41 [notice] 1#1: nginx/1.27.2 2024/11/07 21:43:41 [notice] 1#1: built by gcc 12.2.0 (Debian 12.2.0-14) 2024/11/07 21:43:41 [notice] 1#1: OS: Linux 6.10.11-linuxkit 2024/11/07 21:43:41 [notice] 1#1: getrlimit(RLIMIT_NOFILE): 1048576:1048576 2024/11/07 21:43:41 [notice] 1#1: start worker processes 2024/11/07 21:43:41 [notice] 1#1: start worker process 29 ...
-
Visitez http://localhost:8080 pour voir la page par défaut Nginx et vérifier que le conteneur fonctionne.
-
Dans le terminal, appuyez sur
Ctrl+C pour arrêter le conteneur.
Vous avez maintenant exécuté un serveur web sans aucune configuration ou installation. Docker Hub fournit un accès instantané à des images de conteneur pré-construites et prêtes à utiliser, vous permettant de rapidement télécharger et exécuter des applications sans avoir besoin d'installer ou de configurer des logiciels manuellement. Avec la vaste bibliothèque d'images de Docker Hub, vous pouvez expérimenter avec et déployer des applications sans effort, stimulant la productivité et facilitant l'essai de nouveaux outils, la configuration d'environnements de développement, ou la construction sur des logiciels existants.
Vous pouvez également étendre les images de Docker Hub, vous permettant de rapidement construire et personnaliser vos propres images pour répondre à des besoins spécifiques.
Étape 3 : Construisez et poussez une image vers Docker Hub
-
Créez un Dockerfile pour spécifier votre application :
FROM nginx RUN echo "<h1>Hello world from Docker!</h1>" > /usr/share/nginx/html/index.html
Ce Dockerfile étend l'image Nginx de Docker Hub pour créer un site web simple. Avec seulement quelques lignes, vous pouvez facilement configurer, personnaliser et partager un site web statique en utilisant Docker.
-
Exécutez la commande suivante pour construire votre image. Remplacez
<YOUR-USERNAME>
par votre ID Docker.$ docker build -t <YOUR-USERNAME>/nginx-custom .
Cette commande construit votre image et la tague pour que Docker comprenne dans quel dépôt la pousser dans Docker Hub. Pour en apprendre plus sur la commande et ses options, voir la référence CLI
docker build
. Après avoir exécuté la commande, vous devriez voir une sortie similaire à la suivante.[+] Building 0.6s (6/6) FINISHED docker:desktop-linux => [internal] load build definition from Dockerfile 0.0s => => transferring dockerfile: 128B 0.0s => [internal] load metadata for docker.io/library/nginx:latest 0.0s => [internal] load .dockerignore 0.0s => => transferring context: 2B 0.0s => [1/2] FROM docker.io/library/nginx:latest 0.1s => [2/2] RUN echo "<h1>Hello world from Docker!</h1>" > /usr/share/ 0.2s => exporting to image 0.1s => => exporting layers 0.0s => => writing image sha256:f85ab68f4987847713e87a95c39009a5c9f4ad78 0.0s => => naming to docker.io/mobyismyname/nginx-custom 0.0s
-
Exécutez la commande suivante pour tester votre image. Remplacez
<YOUR-USERNAME>
par votre ID Docker.$ docker run -p 8080:80 --rm <YOUR-USERNAME>/nginx-custom
-
Visitez http://localhost:8080 pour voir la page. Vous devriez voir
Hello world from Docker!
. -
Dans le terminal, appuyez sur CTRL+C pour arrêter le conteneur.
-
Connectez-vous à Docker Desktop. Vous devez être connecté avant de pousser une image vers Docker Hub.
-
Exécutez la commande suivante pour pousser votre image vers Docker Hub. Remplacez
<YOUR-USERNAME>
par votre ID Docker.$ docker push <YOUR-USERNAME>/nginx-custom
NoteVous devez être connecté à Docker Hub via Docker Desktop ou la ligne de commande, et vous devez également nommer vos images correctement, comme indiqué dans les étapes ci-dessus.
La commande pousse l'image vers Docker Hub et crée automatiquement le dépôt s'il n'existe pas. Pour en apprendre plus sur la commande, voir la référence CLI
docker push
. Après avoir exécuté la commande, vous devriez voir une sortie similaire à la suivante.Using default tag: latest The push refers to repository [docker.io/mobyismyname/nginx-custom] d0e011850342: Pushed e4e9e9ad93c2: Mounted from library/nginx 6ac729401225: Mounted from library/nginx 8ce189049cb5: Mounted from library/nginx 296af1bd2844: Mounted from library/nginx 63d7ce983cd5: Mounted from library/nginx b33db0c3c3a8: Mounted from library/nginx 98b5f35ea9d3: Mounted from library/nginx latest: digest: sha256:7f5223ae866e725a7f86b856c30edd3b86f60d76694df81d90b08918d8de1e3f size: 1985
Maintenant que vous avez créé un dépôt et poussé votre image, il est temps de voir votre dépôt et d'explorer ses options.
Étape 4 : Visualisez votre dépôt sur Docker Hub et explorez les options
Vous pouvez voir vos dépôts Docker Hub dans l'interface Docker Hub ou Docker Desktop.
-
Allez sur Docker Hub et connectez-vous.
Après vous être connecté, vous devriez être sur la page Dépôts. Sinon, allez sur la page Dépôts.
-
Trouvez le dépôt nginx-custom et sélectionnez cette ligne.
Après avoir sélectionné le dépôt, vous devriez voir plus de détails et d'options pour votre dépôt.
-
Connectez-vous à Docker Desktop.
-
Sélectionnez la vue Images.
-
Sélectionnez l'onglet Dépôts Hub.
Une liste de vos dépôts Docker Hub apparaît.
-
Trouvez le dépôt nginx-custom, survolez la ligne, puis sélectionnez Voir dans Hub.
Docker Hub s'ouvre et vous pouvez voir plus de détails sur l'image.
Vous avez maintenant vérifié que votre dépôt existe sur Docker Hub, et vous avez découvert plus d'options pour celui-ci. Voir les prochaines étapes pour en apprendre plus sur certaines de ces options.
Prochaines étapes
Ajoutez des informations de dépôt pour aider les utilisateurs à trouver et utiliser votre image.