Connectez votre JFrog Artifactory à Docker Hub pour Éviter les Limites de Taux de Téléchargement

 Docker Download Limits

Vous avez peut-être entendu la dernière annonce de Docker concernant les nouvelles limites de taux pour les extractions d'image de conteneur. À compter du 1er novembre, Docker va commencer à limiter l'utilisation de Docker Hub en fonction de votre niveau d'abonnement et va bloquer les demandes d'extraction qui dépassent les limites imposées. En plus de cela, Docker a également mis en place une nouvelle politique de rétention pour les images inactives, de six mois pour les comptes gratuits (prévue à l'origine pour le 1er novembre, cette politique a été repoussée à mi-2021 en raison des retours de la communauté). Ces nouvelles limitations impacteront fortement la consommation des images de conteneur Docker dans le monde.

Docker a donné l'exemple en tant qu'initiative open source, qui fournit un niveau inédit d'outils de déploiement continu et de méthodologies pour la communauté open source. Cela ne fait aucun doute. Les nouvelles limitations n'impacteront pas fortement les développeurs solo. En revanche, elles présenteront de nouveaux défis pour les équipes de développement de taille moyenne à grande. Plus votre équipe est grande, plus elle sera impactée. Et ce n'est peut-être qu'un début : nous pouvons nous attendre à voir apparaître de nouvelles politiques à l'avenir, affectant l'utilisation de Docker Hub et au-delà.

La bonne nouvelle est qu'il existe de nombreux outils pour gérer vos images Docker et veiller à ce que le pipeline de développement de votre organisation ne soit aucunement affecté. JFrog Artifactory est l'un des outils les plus populaires : il servait de registre Docker avant même que Docker ne publie la fonctionnalité de registre. Artifactory vous permettra de continuer à gérer des images de conteneur dans votre propre registre de conteneurs Docker privé, tout en réduisant la dépendance envers Docker Hub.

Découvrons les implications réelles de ces deux limitations annoncées par Docker.

Nouvelle politique de rétention des images de Docker

Jusqu'à présent, les images Docker pouvaient être stockées dans Docker Hub pendant une durée illimitée. Les développeurs utilisaient donc cet espace de stockage sans trop s'en soucier. Une nouvelle politique de rétention des images, avec une entrée en vigueur mi-2021, sera désormais définie selon les nouveaux plans d'abonnement Docker. Par exemple, les images appartenant à des comptes gratuits seront supprimées après 6 mois d'inactivité.

Nouvelle limitation de téléchargement de Docker

À compter du 1er novembre, Docker va imposer une nouvelle limite au transfert de données pour les comptes gratuits, avec 100 extractions pour les utilisateurs anonymes et 200 pour les utilisateurs authentifiés/gratuits, toutes les 6 heures par adresse IP ou par utilisateur unique. Grâce à un simple calcul, on peut déterminer que 200 extractions toutes les 6 heures équivalent à environ 0,55 extractions par minute. Cela risque de ne pas être suffisant pour vous, et si vous atteignez la limite, vous devrez patienter jusqu'à ce que les 6 heures soient écoulées. De plus, l'extraction d'une image que vous possédez déjà est comptabilisée, même si vous ne téléchargez pas les couches. Cette limitation sera particulièrement difficile pour les entreprises possédant un petit nombre d'adresses IP (parfois en raison des VPN d'entreprise) pour leurs équipes utilisant les réseaux de la société.

Stockez et Protégez vos Images Docker dans Artifactory

L'utilisation d'Artifactory en tant que registre Docker vous permet de stocker vos images Docker pendant une durée illimitée, sans avoir à vous soucier du fait que les images expirent et soient supprimées. Avec Artifactory, vous mettez en cache vos images et gérez les politiques de registre et de rétention selon ce qui convient le mieux à votre équipe (la bonne pratique consiste à maintenir et à stocker uniquement les images dont vous avez besoin régulièrement : cela vous permettra d'optimiser vos limites de taux de téléchargement sur Docker Hub). Avec Artifactory, vous n'avez pas non plus à vous soucier de votre stockage. Grâce au stockage basé sur la somme de contrôle, Artifactory utilise tout le potentiel de votre stockage.

Réduisez le nombre d'extractions depuis Docker Hub

En utilisant Artifactory en tant que dépôt distant servant de proxy pour Docker Hub, vous réduisez également le nombre de requêtes d'extraction depuis Docker Hub. Artifactory demande une fois l'image dont vous avez besoin à Docker Hub et rend ces images disponibles pour toutes vos équipes internes qui utilisent Artifactory, sans devoir retourner à Docker Hub. Artifactory vous permet de vous authentifier avec Docker Hub à l'aide de votre Compte Docker. Ainsi, chaque demande sera authentifiée et comptabilisée selon le type de votre compte.

De plus, lorsque vous travaillez avec Artifactory versions 6.23 et 7.10 et supérieures, et utilisez un dépôt distant en tant que proxy, les mécanismes d'extraction depuis Docker Hub utilisent désormais efficacement une nouvelle requête, pour mieux exploiter la mise en cache interne. Cela signifie qu'avant d'envoyer une nouvelle requête GET (considérée comme une extraction par Docker et comptabilisée dans le cadre des nouvelles restrictions), Artifactory enverra une demande HEAD pour comparer les fichiers manifestes et mettre à jour le manifeste en cache uniquement si nécessaire. Artifactory extraira une fois l'image depuis Docker et la rendra disponible pour toute votre organisation, afin d'éviter d'atteindre vos limites d'extraction. Vous pouvez toujours contrôler le rythme de la mise en cache afin de réduire les appels vers Docker Hub.

Allez Au-delà du Registre Docker : Sécurisez et Distribuez les Images Docker

Maintenant que vous savez que vos images seront disponibles et que les contraintes de Docker ne vous limiteront pas, vous pouvez vous attaquer au reste du cycle de vie de votre conteneur.

L'une des principales inquiétudes que rencontrent les entreprises avec les images Docker est liée au problème de la « poupée russe », dans lequel plusieurs conteneurs se trouvent dans des conteneurs composés de couches complexes invisibles pour des outils de développement logiciel standards. Heureusement, grâce à l'analyse récursive approfondie et intégrée des conteneurs stockés dans Artifactory, proposée par JFrog Xray, les couches sont exposées et les vulnérabilités sont identifiées avant même que vous ne passiez en production. Au-delà de Docker, cette fonctionnalité de scan de sécurité est disponibles prête à l'emploi pour les types de package les plus courants.

La Plateforme JFrog inclut également plusieurs outils pour distribuer les logiciels en périphérie, de manière sécurisée et rapide. Grâce à la fonctionnalité peer-to-peer, JFrog vous aide à gérer les pics de téléchargement d'images de conteneur (atteignant souvent plusieurs Go) sur des centaines de nœuds et de clusters. Cela réduit à la fois la latence et la pression sur les dépôts individuels. Le produit JFrog Distribution vous permet également de sécuriser les release bundles qui peuvent inclure des conteneurs logiciels, de les livrer en périphérie et de valider vos mises à jour logicielles, même dans des environnements étanches.

La Plateforme JFrog occupe une position unique pour remédier aux risques liés aux éventuelles futures modifications dans les offres Docker, tout en vous fournissant des outils au-delà de la fonctionnalité de Registre Docker pour gérer tout le cycle de vie de vos déploiements continus de conteneur.

Vous utilisez déjà JFrog ? En savoir plus sur l'utilisation d'Artifactory en tant que Registre Docker.

Vous découvrez JFrog ? Emmenez gratuitement la Plateforme JFrog dans le Cloud.