⚠️ Traduction non officielle - Cette documentation est une traduction communautaire non officielle de Docker.

Contenu de confiance

Le contenu de confiance de Docker Hub fournit une sélection organisée d'images de haute qualité et sécurisées conçues pour donner aux développeurs confiance dans la fiabilité et la sécurité des ressources qu'ils utilisent. Ces images sont stables, régulièrement mises à jour, et adhèrent aux meilleures pratiques de l'industrie, en faisant une fondation solide pour construire et déployer des applications. Le contenu de confiance de Docker Hub inclut les Images Officielles Docker, les images d'Éditeur Vérifié, et les images de Logiciels Open Source Sponsorisés par Docker.

Images Officielles Docker

Les Images Officielles Docker sont un ensemble organisé de dépôts Docker hébergés sur Docker Hub.

Docker recommande que vous utilisiez les Images Officielles Docker dans vos projets. Ces images ont une documentation claire, promeuvent les meilleures pratiques, et sont régulièrement mises à jour. Les Images Officielles Docker supportent la plupart des cas d'usage courants, les rendant parfaites pour les nouveaux utilisateurs Docker. Les utilisateurs avancés peuvent bénéficier de variantes d'images plus spécialisées ainsi que réviser les Images Officielles Docker dans le cadre de votre processus d'apprentissage de Dockerfile.

Note

L'utilisation des Images Officielles Docker est soumise aux Conditions de Service de Docker.

Ces images fournissent des dépôts de base essentiels qui servent de point de départ pour la majorité des utilisateurs.

Celles-ci incluent des systèmes d'exploitation tels que Ubuntu et Alpine, des environnements d'exécution de langages de programmation tels que Python et Node, et d'autres outils essentiels tels que memcached et MySQL.

Les images sont parmi les images les plus sécurisées sur Docker Hub. Ceci est particulièrement important car les Images Officielles Docker sont parmi les plus populaires sur Docker Hub. Typiquement, les Images officielles Docker ont peu ou pas de packages contenant des CVE.

Les images exemplifient les meilleures pratiques Dockerfile et fournissent une documentation claire pour servir de référence pour d'autres auteurs de Dockerfile.

Les images qui font partie de ce programme ont un badge spécial sur Docker Hub rendant plus facile pour vous d'identifier les projets qui font partie des Images Officielles Docker.

Badge d'image officielle Docker

Étiquettes supportées et liens Dockerfile respectifs

La description du dépôt pour chaque Image Officielle Docker contient une section Étiquettes supportées et liens Dockerfile respectifs qui liste toutes les étiquettes actuelles avec des liens vers les Dockerfiles qui ont créé l'image avec ces étiquettes. Le but de cette section est de montrer quelles variantes d'images sont disponibles.

Exemple : étiquettes supportées pour Ubuntu

Les étiquettes listées sur la même ligne se réfèrent toutes à la même image sous-jacente. Plusieurs étiquettes peuvent pointer vers la même image. Par exemple, dans la capture d'écran précédente prise du dépôt Images Officielles Docker ubuntu, les étiquettes 24.04, noble-20240225, noble, et devel se réfèrent toutes à la même image.

L'étiquette latest pour une Image Officielle Docker est souvent optimisée pour la facilité d'usage et inclut une large variété de logiciels utiles, tels que des outils de développement et de build. En étiquetant une image comme latest, les mainteneurs de l'image suggèrent essentiellement que cette image soit utilisée par défaut. En d'autres termes, si vous ne savez pas quelle étiquette utiliser ou n'êtes pas familier avec le logiciel sous-jacent, vous devriez probablement commencer avec l'image latest. Au fur et à mesure que votre compréhension du logiciel et des variantes d'images s'améliore, vous pourriez trouver que d'autres variantes d'images conviennent mieux à vos besoins.

Images slim

Un certain nombre de piles de langages telles que Node.js, Python, et Ruby ont des variantes d'étiquettes slim conçues pour fournir une image de base légère et prête pour la production avec moins de packages.

Un pattern de consommation typique pour les images slim est comme image de base pour l'étape finale d'un build multi-étapes. Par exemple, vous construisez votre application dans la première étape du build en utilisant la variante latest puis copiez votre application dans l'étape finale basée sur la variante slim. Voici un exemple de Dockerfile.

FROM node:latest AS build
WORKDIR /app
COPY package.json package-lock.json ./
RUN npm ci
COPY . ./
FROM node:slim
WORKDIR /app
COPY --from=build /app /app
CMD ["node", "app.js"]

Images Alpine

Beaucoup de dépôts d'Images Officielles Docker offrent aussi des variantes alpine. Ces images sont construites sur la distribution Alpine Linux plutôt que Debian ou Ubuntu. Alpine Linux est axé sur la fourniture d'une base petite, simple et sécurisée pour les images de conteneurs, et les variantes alpine des Images Officielles Docker visent typiquement à installer seulement les packages nécessaires. En résultat, les variantes alpine des Images Officielles Docker sont typiquement encore plus petites que les variantes slim.

La principale mise en garde à noter est qu'Alpine Linux utilise musl libc au lieu de glibc. De plus, pour minimiser la taille de l'image, il est peu courant pour les images basées sur Alpine d'inclure des outils tels que Git ou Bash par défaut. Selon la profondeur des exigences libc ou des suppositions dans vos programmes, vous pourriez vous retrouver à rencontrer des problèmes dus à des bibliothèques ou outils manquants.

Quand vous utilisez des images Alpine comme base, considérez les options suivantes afin de rendre votre programme compatible avec Alpine Linux et musl :

  • Compilez votre programme contre musl libc
  • Liez statiquement les bibliothèques glibc dans votre programme
  • Évitez complètement les dépendances C (par exemple, construisez les programmes Go sans CGO)
  • Ajoutez le logiciel dont vous avez besoin vous-même dans votre Dockerfile.

Référez-vous à la description de l'image alpine sur Docker Hub pour des exemples sur comment installer des packages si vous n'êtes pas familier.

Noms de code

Les étiquettes avec des mots qui ressemblent à des personnages de Toy Story (par exemple, bookworm, bullseye, et trixie) ou des adjectifs (tels que jammy, et noble), indiquent le nom de code de la distribution Linux qu'ils utilisent comme image de base. Les noms de code de release Debian sont basés sur les personnages de Toy Story, et ceux d'Ubuntu prennent la forme "Adjectif Animal". Par exemple, le nom de code pour Ubuntu 24.04 est "Noble Numbat".

Les indicateurs de distribution Linux sont utiles car beaucoup d'Images Officielles Docker fournissent des variantes construites sur plusieurs versions de distribution sous-jacentes (par exemple, postgres:bookworm et postgres:bullseye).

Autres étiquettes

Les étiquettes des Images Officielles Docker peuvent contenir d'autres indices sur le but de leur variante d'image en plus de ceux décrits ici. Souvent ces variantes d'étiquettes sont expliquées dans la documentation du dépôt Images Officielles Docker. Lire les sections "Comment utiliser cette image" et "Variantes d'Images" vous aidera à comprendre comment utiliser ces variantes.

Images d'Éditeur Vérifié

Le programme Éditeur Vérifié Docker fournit des images de haute qualité d' éditeurs commerciaux vérifiés par Docker.

Ces images aident les équipes de développement à construire des chaînes d'approvisionnement logicielles sécurisées, minimisant l'exposition au contenu malveillant tôt dans le processus pour économiser du temps et de l'argent plus tard.

Les images qui font partie de ce programme ont un badge spécial sur Docker Hub rendant plus facile pour les utilisateurs d'identifier les projets que Docker a vérifiés comme éditeurs commerciaux de haute qualité.

Badge Éditeur Vérifié Docker

Images de Logiciels Open Source Sponsorisés par Docker

Le programme de Logiciels Open Source Sponsorisés par Docker (OSS) fournit des images qui sont publiées et maintenues par des projets open source sponsorisés par Docker.

Les images qui font partie de ce programme ont un badge spécial sur Docker Hub rendant plus facile pour les utilisateurs d'identifier les projets que Docker a vérifiés comme des projets open source de confiance, sécurisés et actifs.

Badge Open Source Sponsorisé par Docker