{"id":1386,"date":"2024-07-23T12:39:23","date_gmt":"2024-07-23T12:39:23","guid":{"rendered":"https:\/\/dockerpros.com\/?post_type=glossary&#038;p=1386"},"modified":"2024-07-23T12:39:23","modified_gmt":"2024-07-23T12:39:23","slug":"distribution-du-cache-dockerfile","status":"publish","type":"glossary","link":"https:\/\/dockerpros.com\/fr\/wiki\/dockerfile-cache-distribution\/","title":{"rendered":"Dockerfile \u2013cache-distribution"},"content":{"rendered":"<h1>Analyse Approfondie du Dockerfile \u2013cache-distribution<\/h1>\n<p>Docker has revolutionized the way developers deploy and manage applications, primarily through the utilization of containers and Dockerfiles. A <span class=\"glossaryai-tooltip glossary-term-652\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/fr\/wiki\/dockerfile\/\" target=\"_blank\">Dockerfile<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">A Dockerfile is a script containing a series of instructions to automate the creation of Docker images. It specifies the base image, application dependencies, and configuration, facilitating consistent deployment across environments.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/fr\/wiki\/dockerfile\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> est un script qui contient une s\u00e9rie d'instructions sur la fa\u00e7on de construire un Docker <span class=\"glossaryai-tooltip glossary-term-651\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/fr\/wiki\/image\/\" target=\"_blank\">image<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Une image est une repr\u00e9sentation visuelle d'un objet ou d'une sc\u00e8ne, g\u00e9n\u00e9ralement compos\u00e9e de pixels dans les formats num\u00e9riques. Elle peut transmettre des informations, susciter des \u00e9motions et faciliter la communication \u00e0 travers diff\u00e9rents m\u00e9dias.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/fr\/wiki\/image\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span>, encapsulant tout ce qui est n\u00e9cessaire pour <span class=\"glossaryai-tooltip glossary-term-672\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/fr\/wiki\/run\/\" target=\"_blank\">run<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">\"RUN\" refers to a command in various programming languages and operating systems to execute a specified program or script. It initiates processes, providing a controlled environment for task execution.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/fr\/wiki\/run\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> an application. The <code>--cache-distribution<\/code> flag is a powerful feature introduced in Docker 20.10, which enhances the <span class=\"glossaryai-tooltip glossary-term-651\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/fr\/wiki\/image\/\" target=\"_blank\">image<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Une image est une repr\u00e9sentation visuelle d'un objet ou d'une sc\u00e8ne, g\u00e9n\u00e9ralement compos\u00e9e de pixels dans les formats num\u00e9riques. Elle peut transmettre des informations, susciter des \u00e9motions et faciliter la communication \u00e0 travers diff\u00e9rents m\u00e9dias.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/fr\/wiki\/image\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> build process by optimizing cache sharing across different builders. This article delves into the mechanics, benefits, and practical implementations of <span class=\"glossaryai-tooltip glossary-term-652\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/fr\/wiki\/dockerfile\/\" target=\"_blank\">Dockerfile<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">A Dockerfile is a script containing a series of instructions to automate the creation of Docker images. It specifies the base image, application dependencies, and configuration, facilitating consistent deployment across environments.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/fr\/wiki\/dockerfile\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> <code>--cache-distribution<\/code>, offrant une compr\u00e9hension exhaustive aux utilisateurs avanc\u00e9s.<\/p>\n<h2>Comprendre la mise en cache de Dockerfile\n\nWhen building a Docker image, Docker steps through the instructions in your Dockerfile, executing each in order. As each instruction is examined, Docker looks for an existing image in its cache that it can reuse, rather than creating a new (duplicate) image. If you do not want to use the cache at all, you can use the --no-cache=true option on the docker build command.\n\nHowever, when you do want to use the cache, it is important to understand when Docker can and cannot find a matching image. The basic rules that Docker follows are outlined below:\n\nStarting with a parent image that is already in the cache, the next instruction is compared against all child images derived from that base image to see if one of them was built using the exact same instruction. If not, the cache is invalidated.\n\nIn most cases, simply comparing the instruction in the Dockerfile with one of the child images is sufficient. However, certain instructions require a little more examination and explanation.\n\nFor the ADD and COPY instructions, the contents of the file(s) in the image are examined and a checksum is calculated for each file. The last-modified and last-accessed times of the file(s) are not considered in these checksums. During the cache lookup, the checksum is compared against the checksum in the existing images. If anything has changed in the file(s), such as the contents and metadata, then the cache is invalidated.\n\nAside from the ADD and COPY commands, cache checking will not look at the files in the container to determine a cache match. For example, when processing a RUN apt-get -y update command the files updated in the container will not be examined to determine if a cache hit exists. In that case just the command string itself will be used to find a match.\n\nOnce the cache is invalidated, all subsequent Dockerfile commands will generate new images and the cache will not be used.<\/h2>\n<p>To appreciate the significance of the <code>--cache-distribution<\/code> flag, one must first understand how Docker&#8217;s caching mechanism works. Docker builds images in layers, where each command in the <span class=\"glossaryai-tooltip glossary-term-652\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/fr\/wiki\/dockerfile\/\" target=\"_blank\">Dockerfile<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">A Dockerfile is a script containing a series of instructions to automate the creation of Docker images. It specifies the base image, application dependencies, and configuration, facilitating consistent deployment across environments.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/fr\/wiki\/dockerfile\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> generates a new layer. When a layer is built, Docker caches it, allowing subsequent builds to reuse this cached layer if the command and its context remain unchanged. This caching mechanism drastically reduces build times and resource consumption, making the build process more efficient.<\/p>\n<p>Traditionally, this cache is local to the builder, meaning that if you have multiple developers or continuous integration (CI) systems building the same images, each maintains its own cache. This leads to redundant work and wasted resources, as identical layers may be rebuilt multiple times across different environments.<\/p>\n<h2>Qu'est-ce que -cache-distribution ?<\/h2>\n<p>The <code>--cache-distribution<\/code> L'option --cache-from permet aux d\u00e9veloppeurs de partager des couches mises en cache entre plusieurs constructeurs ou machines. Cette fonctionnalit\u00e9 am\u00e9liore le processus de construction en permettant aux \u00e9quipes de tirer parti des couches de cache existantes qui ont d\u00e9j\u00e0 \u00e9t\u00e9 construites et test\u00e9es, quel que soit l'endroit o\u00f9 elles ont \u00e9t\u00e9 construites. L'objectif est de minimiser le temps et les ressources consacr\u00e9s \u00e0 la construction d'images en facilitant un m\u00e9canisme efficace de partage de cache.<\/p>\n<p>When a build process is initiated with the <code>--cache-distribution<\/code> flag, Docker can pull cache from a centralized location, which can be a remote cache server, a shared <span class=\"glossaryai-tooltip glossary-term-658\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/fr\/wiki\/registry\/\" target=\"_blank\">registry<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Un registre est une base de donn\u00e9es centralis\u00e9e qui stocke des informations sur diff\u00e9rentes entit\u00e9s, telles que des installations logicielles, des configurations syst\u00e8me ou des donn\u00e9es utilisateur. Il constitue un composant essentiel pour la gestion et la configuration du syst\u00e8me.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/fr\/wiki\/registry\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span>, ou m\u00eame une machine de construction diff\u00e9rente. Cette fonctionnalit\u00e9 est particuli\u00e8rement utile dans les grandes organisations o\u00f9 plusieurs \u00e9quipes sont susceptibles de construire les m\u00eames images. En r\u00e9duisant la duplication des efforts, les organisations peuvent augmenter leur productivit\u00e9 et r\u00e9duire leurs co\u00fbts.<\/p>\n<h2>Avantages de l'utilisation de -cache-distribution\n\nL'option -cache-distribution est utilis\u00e9e pour distribuer les donn\u00e9es de cache sur plusieurs n\u0153uds dans un syst\u00e8me distribu\u00e9. Voici quelques-uns des avantages de son utilisation :\n\n1. Am\u00e9lioration des performances : En distribuant les donn\u00e9es de cache sur plusieurs n\u0153uds, l'option -cache-distribution permet de r\u00e9duire la charge sur chaque n\u0153ud individuel. Cela se traduit par des temps de r\u00e9ponse plus rapides et une meilleure performance globale du syst\u00e8me.\n\n2. \u00c9volutivit\u00e9 : Avec l'option -cache-distribution, il est possible d'ajouter facilement de nouveaux n\u0153uds au syst\u00e8me pour augmenter sa capacit\u00e9 de stockage et de traitement. Cela permet au syst\u00e8me de s'adapter \u00e0 la croissance des besoins en donn\u00e9es et en trafic.\n\n3. Tol\u00e9rance aux pannes : En distribuant les donn\u00e9es de cache sur plusieurs n\u0153uds, l'option -cache-distribution offre une meilleure tol\u00e9rance aux pannes. Si un n\u0153ud tombe en panne, les donn\u00e9es peuvent toujours \u00eatre r\u00e9cup\u00e9r\u00e9es \u00e0 partir des autres n\u0153uds, assurant ainsi la continuit\u00e9 du service.\n\n4. \u00c9quilibrage de charge : L'option -cache-distribution permet de r\u00e9partir \u00e9quitablement la charge de travail entre les diff\u00e9rents n\u0153uds du syst\u00e8me. Cela \u00e9vite la surcharge d'un seul n\u0153ud et garantit une utilisation efficace des ressources disponibles.\n\n5. R\u00e9duction de la latence : En distribuant les donn\u00e9es de cache plus pr\u00e8s des utilisateurs finaux, l'option -cache-distribution r\u00e9duit la latence et am\u00e9liore l'exp\u00e9rience utilisateur. Les donn\u00e9es sont accessibles plus rapidement, ce qui est particuli\u00e8rement important pour les applications n\u00e9cessitant des temps de r\u00e9ponse rapides.\n\n6. Flexibilit\u00e9 : L'option -cache-distribution offre une grande flexibilit\u00e9 dans la gestion des donn\u00e9es de cache. Il est possible de configurer diff\u00e9rents niveaux de r\u00e9plication, de d\u00e9finir des strat\u00e9gies de placement des donn\u00e9es et d'ajuster les param\u00e8tres de distribution en fonction des besoins sp\u00e9cifiques de l'application.\n\n7. \u00c9conomies de co\u00fbts : En utilisant l'option -cache-distribution, il est possible de tirer parti du mat\u00e9riel existant et d'\u00e9viter les co\u00fbts li\u00e9s \u00e0 l'achat de serveurs haut de gamme. La distribution des donn\u00e9es de cache sur plusieurs n\u0153uds permet d'optimiser l'utilisation des ressources et de r\u00e9duire les co\u00fbts d'infrastructure.\n\nEn conclusion, l'option -cache-distribution offre de nombreux avantages pour les syst\u00e8mes distribu\u00e9s, notamment en termes de performances, d'\u00e9volutivit\u00e9, de tol\u00e9rance aux pannes et de r\u00e9duction des co\u00fbts. Elle permet d'optimiser l'utilisation des ressources et d'am\u00e9liorer l'exp\u00e9rience utilisateur en garantissant un acc\u00e8s rapide et fiable aux donn\u00e9es de cache.<\/h2>\n<h3>1. Reduced Build Times<\/h3>\n<p>L'un des avantages les plus significatifs de l'utilisation <code>--cache-distribution<\/code> est la r\u00e9duction substantielle des temps de construction. En tirant parti des couches existantes stock\u00e9es dans un cache distant, les d\u00e9veloppeurs peuvent sauter le processus long de construction des couches non modifi\u00e9es, ce qui conduit \u00e0 des d\u00e9ploiements plus rapides et \u00e0 des cycles d'it\u00e9ration plus rapides.<\/p>\n<h3>2. Utilisation efficace des ressources<\/h3>\n<p>Le partage du cache r\u00e9duit la demande en ressources CPU et m\u00e9moire, car les constructeurs n'auront pas besoin de reconstruire des couches d\u00e9j\u00e0 disponibles. Cette efficacit\u00e9 acc\u00e9l\u00e8re non seulement le processus de construction, mais minimise \u00e9galement l'empreinte environnementale <span class=\"glossaryai-tooltip glossary-term-650\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/fr\/wiki\/container\/\" target=\"_blank\">conteneur<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Containers are lightweight, portable units that encapsulate software and its dependencies, enabling consistent execution across different environments. They leverage OS-level virtualization for efficiency.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/fr\/wiki\/container\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> construit.<\/p>\n<h3>Coh\u00e9rence \u00e0 travers les environnements<\/h3>\n<p>When different developers or CI systems build the same images, the potential for discrepancies exists, especially if one builder has a different version of a layer or a different build context. By consolidating cache across builders, teams can ensure that they are all working with the same <span class=\"glossaryai-tooltip glossary-term-739\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/fr\/wiki\/image-layers\/\" target=\"_blank\">couches d'image<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Les calques sont des composants fondamentaux dans les logiciels de conception et d'\u00e9dition graphique, permettant une manipulation non destructive des \u00e9l\u00e9ments. Chaque calque peut contenir diff\u00e9rentes images, effets ou r\u00e9glages, offrant un contr\u00f4le pr\u00e9cis sur la composition et les effets visuels.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/fr\/wiki\/image-layers\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span>, en augmentant la coh\u00e9rence et en r\u00e9duisant le risque de bogues qui r\u00e9sultent d'environnements diff\u00e9rents.<\/p>\n<h3>4. Gestion simplifi\u00e9e des d\u00e9pendances<\/h3>\n<p>With a shared cache, managing dependencies becomes easier. For example, if several projects rely on the same base <span class=\"glossaryai-tooltip glossary-term-651\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/fr\/wiki\/image\/\" target=\"_blank\">image<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Une image est une repr\u00e9sentation visuelle d'un objet ou d'une sc\u00e8ne, g\u00e9n\u00e9ralement compos\u00e9e de pixels dans les formats num\u00e9riques. Elle peut transmettre des informations, susciter des \u00e9motions et faciliter la communication \u00e0 travers diff\u00e9rents m\u00e9dias.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/fr\/wiki\/image\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span>, those layers can be cached and shared, simplifying updates and changes across projects. This is particularly useful in microservices architectures where multiple services may share common libraries or base images.<\/p>\n<h3>5. Collaboration am\u00e9lior\u00e9e<\/h3>\n<p>Dans les \u00e9quipes plus grandes, la <code>--cache-distribution<\/code> feature fosters collaboration. Developers no longer need to wait for layers to be rebuilt or worry about the state of their local cache. Teams can focus on writing code rather than managing individual Docker caches.<\/p>\n<h2>Comment utiliser l'option --cache-distribution\n\nL'option --cache-distribution est utilis\u00e9e pour sp\u00e9cifier la distribution de cache \u00e0 utiliser pour un paquet particulier. Elle peut \u00eatre utilis\u00e9e avec les commandes apt-get install, apt-get remove et apt-get purge.\n\nPar exemple, pour installer le paquet apache2 en utilisant la distribution de cache \"stable\", vous pouvez utiliser la commande suivante :\n\n```\nsudo apt-get install --cache-distribution=stable apache2\n```\n\nDe m\u00eame, pour supprimer le paquet apache2 en utilisant la distribution de cache \"stable\", vous pouvez utiliser la commande suivante :\n\n```\nsudo apt-get remove --cache-distribution=stable apache2\n```\n\nEt pour purger le paquet apache2 en utilisant la distribution de cache \"stable\", vous pouvez utiliser la commande suivante :\n\n```\nsudo apt-get purge --cache-distribution=stable apache2\n```\n\nNotez que l'option --cache-distribution n'est pas disponible sur toutes les versions d'Ubuntu. Si vous utilisez une version plus ancienne d'Ubuntu, vous devrez peut-\u00eatre utiliser une autre m\u00e9thode pour sp\u00e9cifier la distribution de cache \u00e0 utiliser.<\/h2>\n<p>Pour utiliser le <code>--cache-distribution<\/code> feature, you need to understand its syntax and how it integrates into your build process. The usage generally includes the following steps:<\/p>\n<h3>Pr\u00e9requis<\/h3>\n<p>Before utilizing cache distribution, ensure that:<\/p>\n<ul>\n<li>You have Docker version 20.10 or higher.<\/li>\n<li>Votre Docker <span class=\"glossaryai-tooltip glossary-term-667\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/fr\/wiki\/daemon\/\" target=\"_blank\">d\u00e9mon<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Un d\u00e9mon est un processus d'arri\u00e8re-plan en informatique qui s'ex\u00e9cute de mani\u00e8re autonome, effectuant des t\u00e2ches sans intervention de l'utilisateur. Il g\u00e8re g\u00e9n\u00e9ralement des fonctions au niveau du syst\u00e8me ou de l'application, am\u00e9liorant ainsi l'efficacit\u00e9.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/fr\/wiki\/daemon\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> est configur\u00e9 pour prendre en charge la distribution du cache.<\/li>\n<li>You have access to a cache server or a shared <span class=\"glossaryai-tooltip glossary-term-651\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/fr\/wiki\/image\/\" target=\"_blank\">image<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Une image est une repr\u00e9sentation visuelle d'un objet ou d'une sc\u00e8ne, g\u00e9n\u00e9ralement compos\u00e9e de pixels dans les formats num\u00e9riques. Elle peut transmettre des informations, susciter des \u00e9motions et faciliter la communication \u00e0 travers diff\u00e9rents m\u00e9dias.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/fr\/wiki\/image\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> <span class=\"glossaryai-tooltip glossary-term-658\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/fr\/wiki\/registry\/\" target=\"_blank\">registry<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Un registre est une base de donn\u00e9es centralis\u00e9e qui stocke des informations sur diff\u00e9rentes entit\u00e9s, telles que des installations logicielles, des configurations syst\u00e8me ou des donn\u00e9es utilisateur. Il constitue un composant essentiel pour la gestion et la configuration du syst\u00e8me.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/fr\/wiki\/registry\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span>.<\/li>\n<\/ul>\n<h3>Construction avec \u2013cache-distribution<\/h3>\n<p>The command to build a Docker <span class=\"glossaryai-tooltip glossary-term-651\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/fr\/wiki\/image\/\" target=\"_blank\">image<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Une image est une repr\u00e9sentation visuelle d'un objet ou d'une sc\u00e8ne, g\u00e9n\u00e9ralement compos\u00e9e de pixels dans les formats num\u00e9riques. Elle peut transmettre des informations, susciter des \u00e9motions et faciliter la communication \u00e0 travers diff\u00e9rents m\u00e9dias.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/fr\/wiki\/image\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> with cache distribution is as follows:<\/p>\n<pre><code class=\"language-bash\">docker build --cache-from=remote-cache --cache-distribution=remote-cache .<\/code><\/pre>\n<p>Here, <code>remote-cache<\/code> refers to the location of the distributed cache, which could be a remote <span class=\"glossaryai-tooltip glossary-term-658\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/fr\/wiki\/registry\/\" target=\"_blank\">registry<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Un registre est une base de donn\u00e9es centralis\u00e9e qui stocke des informations sur diff\u00e9rentes entit\u00e9s, telles que des installations logicielles, des configurations syst\u00e8me ou des donn\u00e9es utilisateur. Il constitue un composant essentiel pour la gestion et la configuration du syst\u00e8me.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/fr\/wiki\/registry\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> or cache server.<\/p>\n<h3>Example of Cache Configuration<\/h3>\n<p>Let\u2019s imagine a scenario where you have a remote cache setup in a <span class=\"glossaryai-tooltip glossary-term-658\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/fr\/wiki\/registry\/\" target=\"_blank\">Registre<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Un registre est une base de donn\u00e9es centralis\u00e9e qui stocke des informations sur diff\u00e9rentes entit\u00e9s, telles que des installations logicielles, des configurations syst\u00e8me ou des donn\u00e9es utilisateur. Il constitue un composant essentiel pour la gestion et la configuration du syst\u00e8me.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/fr\/wiki\/registry\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> like <span class=\"glossaryai-tooltip glossary-term-653\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/fr\/wiki\/docker-hub\/\" target=\"_blank\">Docker Hub<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Docker Hub is a cloud-based repository for storing and sharing container images. It facilitates version control, collaborative development, and seamless integration with Docker CLI for efficient container management.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/fr\/wiki\/docker-hub\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> or a <span class=\"glossaryai-tooltip glossary-term-737\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/fr\/wiki\/private-registry\/\" target=\"_blank\">registre priv\u00e9<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Un registre priv\u00e9 est un d\u00e9p\u00f4t s\u00e9curis\u00e9 permettant de g\u00e9rer et de stocker des images de conteneurs, offrant aux organisations la possibilit\u00e9 de contr\u00f4ler l'acc\u00e8s, d'am\u00e9liorer la s\u00e9curit\u00e9 et de rationaliser les processus de d\u00e9ploiement au sein de leur infrastructure.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/fr\/wiki\/private-registry\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span>. The following example illustrates how you can configure your build process.<\/p>\n<ol>\n<li>\n<p><strong>Build the initial <span class=\"glossaryai-tooltip glossary-term-651\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/fr\/wiki\/image\/\" target=\"_blank\">image<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Une image est une repr\u00e9sentation visuelle d'un objet ou d'une sc\u00e8ne, g\u00e9n\u00e9ralement compos\u00e9e de pixels dans les formats num\u00e9riques. Elle peut transmettre des informations, susciter des \u00e9motions et faciliter la communication \u00e0 travers diff\u00e9rents m\u00e9dias.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/fr\/wiki\/image\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span>:<\/strong><\/p>\n<p>First, build your Docker <span class=\"glossaryai-tooltip glossary-term-651\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/fr\/wiki\/image\/\" target=\"_blank\">image<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Une image est une repr\u00e9sentation visuelle d'un objet ou d'une sc\u00e8ne, g\u00e9n\u00e9ralement compos\u00e9e de pixels dans les formats num\u00e9riques. Elle peut transmettre des informations, susciter des \u00e9motions et faciliter la communication \u00e0 travers diff\u00e9rents m\u00e9dias.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/fr\/wiki\/image\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> normally and push it to the <span class=\"glossaryai-tooltip glossary-term-658\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/fr\/wiki\/registry\/\" target=\"_blank\">registry<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Un registre est une base de donn\u00e9es centralis\u00e9e qui stocke des informations sur diff\u00e9rentes entit\u00e9s, telles que des installations logicielles, des configurations syst\u00e8me ou des donn\u00e9es utilisateur. Il constitue un composant essentiel pour la gestion et la configuration du syst\u00e8me.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/fr\/wiki\/registry\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span>.<\/p>\n<pre><code class=\"language-bash\">docker build -t your_registry\/your_image:latest .\ndocker push your_registry\/your_image:latest<\/code><\/pre>\n<\/li>\n<li>\n<p><strong>Utilisez le cache pour les builds suivants :<\/strong><\/p>\n<p>Pour les versions suivantes, tirez parti de <code>--cache-distribution<\/code> drapeau:<\/p>\n<pre><code class=\"language-bash\">docker build --cache-from=your_registry\/your_image:latest --cache-distribution=your_cache_server .<\/code><\/pre>\n<\/li>\n<\/ol>\n<h3>Configuring Cache Servers<\/h3>\n<p>For more advanced setups, you may want to set up a dedicated cache server. Several options are available, such as using a Redis or Memcached server to store and distribute cached layers among builders. <\/p>\n<h4>Exemple de serveur de cache Redis<\/h4>\n<ol>\n<li>\n<p><strong>Set Up Redis as Cache:<\/strong><\/p>\n<p><span class=\"glossaryai-tooltip glossary-term-672\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/fr\/wiki\/run\/\" target=\"_blank\">Courir<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">\"RUN\" refers to a command in various programming languages and operating systems to execute a specified program or script. It initiates processes, providing a controlled environment for task execution.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/fr\/wiki\/run\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> Redis in a Docker <span class=\"glossaryai-tooltip glossary-term-650\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/fr\/wiki\/container\/\" target=\"_blank\">conteneur<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Containers are lightweight, portable units that encapsulate software and its dependencies, enabling consistent execution across different environments. They leverage OS-level virtualization for efficiency.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/fr\/wiki\/container\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span>:<\/p>\n<pre><code class=\"language-bash\">docker <span class=\"glossaryai-tooltip glossary-term-672\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/fr\/wiki\/run\/\" target=\"_blank\">run<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">\"RUN\" refers to a command in various programming languages and operating systems to execute a specified program or script. It initiates processes, providing a controlled environment for task execution.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/fr\/wiki\/run\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> -d --name redis-cache -p 6379:6379 redis<\/code><\/pre>\n<\/li>\n<li>\n<p><strong>Configurer Docker pour utiliser Redis :<\/strong><\/p>\n<p>Dans votre fichier de configuration Docker (g\u00e9n\u00e9ralement situ\u00e9 \u00e0 <code>\/etc\/docker\/daemon.json<\/code>), you would specify the Redis server:<\/p>\n<pre><code class=\"language-json\">{\n  \"distribution-de-cache\": {\n    \"server\": \"redis:\/\/localhost:6379\"\n  }\n}<\/code><\/pre>\n<\/li>\n<li>\n<p><strong>Construire en utilisant le cache Redis :<\/strong><\/p>\n<p>Now, you can build your images by utilizing the Redis cache:<\/p>\n<pre><code class=\"language-bash\">docker build --cache-distribution=redis:\/\/localhost:6379 .<\/code><\/pre>\n<\/li>\n<\/ol>\n<h2>Bonnes pratiques pour la distribution de cache<\/h2>\n<p>Pour tirer pleinement parti des avantages <code>--cache-distribution<\/code>, voici quelques bonnes pratiques \u00e0 consid\u00e9rer :<\/p>\n<h3>1. Version Your Images<\/h3>\n<p>\u00c9tiquetez vos images avec des versions lorsque vous les envoyez vers le cache. Cela permet de maintenir un historique clair des modifications et de revenir \u00e0 des versions ant\u00e9rieures si n\u00e9cessaire.<\/p>\n<h3>2. Nettoyez les anciens caches<\/h3>\n<p>Pour \u00e9viter d'encombrer votre serveur de cache, nettoyez r\u00e9guli\u00e8rement les anciennes couches de cache inutilis\u00e9es. Mettez en place une politique de r\u00e9tention d\u00e9finissant la dur\u00e9e de conservation des couches dans le cache.<\/p>\n<h3>3. Monitor Cache Performance<\/h3>\n<p>Surveillez les performances et l'utilisation de votre serveur de cache. Des outils comme Prometheus et Grafana peuvent \u00eatre utiles pour visualiser les taux de succ\u00e8s et d'\u00e9chec du cache, vous donnant un aper\u00e7u de l'efficacit\u00e9 de votre strat\u00e9gie de mise en cache.<\/p>\n<h3>4. Utilisez la mise en cache des couches avec sagesse<\/h3>\n<p>Toutes les couches ne se valent pas en termes de r\u00e9utilisation du cache. Concentrez-vous sur l'optimisation des couches qui changent le moins souvent (par exemple, l'installation des d\u00e9pendances) et minimisez les changements fr\u00e9quents des couches qui sont reconstruites souvent.<\/p>\n<h3>5. Documentez votre processus.<\/h3>\n<p>Assurez-vous de documenter le processus de distribution du cache pour votre \u00e9quipe. Incluez les bonnes pratiques, les commandes et les configurations afin que tout le monde soit sur la m\u00eame longueur d'onde quant \u00e0 l'utilisation efficace du m\u00e9canisme de mise en cache.<\/p>\n<h2>D\u00e9fis et consid\u00e9rations<\/h2>\n<p>While <code>--cache-distribution<\/code> provides numerous benefits, there are also challenges that users should be aware of:<\/p>\n<h3>1. Latence du r\u00e9seau<\/h3>\n<p>Lors de l'utilisation d'un cache distant, <span class=\"glossaryai-tooltip glossary-term-661\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/fr\/wiki\/network\/\" target=\"_blank\">r\u00e9seau<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">A network, in computing, refers to a collection of interconnected devices that communicate and share resources. It enables data exchange, facilitates collaboration, and enhances operational efficiency.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/fr\/wiki\/network\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> La latence peut affecter les temps de construction. Assurez-vous que votre serveur de cache est situ\u00e9 \u00e0 proximit\u00e9 de votre environnement de construction afin d'att\u00e9nuer les probl\u00e8mes de latence.<\/p>\n<h3>2. Invalidation du cache<\/h3>\n<p>Cache invalidation can be a challenge, particularly if layers are frequently changed. An effective strategy for managing cache invalidation is crucial to avoid stale layers being reused.<\/p>\n<h3>3. S\u00e9curit\u00e9 Pr\u00e9occupations<\/h3>\n<p>Lors du partage de caches, soyez conscient des implications de s\u00e9curit\u00e9 potentielles. Veillez \u00e0 ce que votre serveur de cache soit s\u00e9curis\u00e9 et \u00e0 ce que les informations sensibles ne soient pas mises en cache ou expos\u00e9es par inadvertance.<\/p>\n<h3>4. Compatibility Issues<\/h3>\n<p>Toutes les fonctionnalit\u00e9s Docker ne sont pas n\u00e9cessairement compatibles avec la distribution de cache. Il est essentiel de tester minutieusement vos constructions pour garantir leur compatibilit\u00e9 et leur fiabilit\u00e9.<\/p>\n<h2>Conclusion<\/h2>\n<p>The <code>--cache-distribution<\/code> feature in Docker is a game-changer for teams looking to optimize their <span class=\"glossaryai-tooltip glossary-term-651\"><span class=\"glossaryai-link\"><a href=\"https:\/\/dockerpros.com\/fr\/wiki\/image\/\" target=\"_blank\">image<\/a><\/span><span class=\"gai-content-hidden glossaryai-tooltip-content\"><span class=\"gai-tooltip-body\"><span class=\"glossaryai-tooltip-text\">Une image est une repr\u00e9sentation visuelle d'un objet ou d'une sc\u00e8ne, g\u00e9n\u00e9ralement compos\u00e9e de pixels dans les formats num\u00e9riques. Elle peut transmettre des informations, susciter des \u00e9motions et faciliter la communication \u00e0 travers diff\u00e9rents m\u00e9dias.<span class=\"glossaryai-more-link\"> <a href=\"https:\/\/dockerpros.com\/fr\/wiki\/image\/\">More \u00bb<\/a><\/span><\/span><\/span><\/span><\/span> build processes. By facilitating the sharing of cached layers across different builders, organizations can significantly reduce build times, improve resource utilization, and foster consistency in their Docker images. While there may be challenges to consider, the benefits far outweigh the drawbacks for many use cases.<\/p>\n<p>As you explore the capabilities of Docker\u2019s cache distribution, remember to implement best practices and monitor your cache\u2019s performance. With careful management and an understanding of how to leverage this powerful feature, you can elevate your Docker workflows and enhance your development productivity.<\/p>","protected":false},"excerpt":{"rendered":"<p>L'option `\u2013cache-distribution` dans Docker permet un cache efficace entre plusieurs builds, optimisant la r\u00e9utilisation des couches et acc\u00e9l\u00e9rant le processus de construction. Cette fonctionnalit\u00e9 am\u00e9liore les flux de travail CI\/CD en r\u00e9duisant la redondance.<\/p>","protected":false},"author":1,"featured_media":2085,"parent":0,"template":"","glossary-cat":[],"class_list":["post-1386","glossary","type-glossary","status-publish","has-post-thumbnail","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Dockerfile -cache-distribution - Dockerpros<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/dockerpros.com\/fr\/wiki\/distribution-du-cache-dockerfile\/\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Dockerfile -cache-distribution - Dockerpros\" \/>\n<meta property=\"og:description\" content=\"The `--cache-distribution` flag in Docker enables efficient caching across multiple builds, optimizing layer reuse and speeding up the build process. This feature enhances CI\/CD workflows by reducing redundancy.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/dockerpros.com\/fr\/wiki\/distribution-du-cache-dockerfile\/\" \/>\n<meta property=\"og:site_name\" content=\"Dockerpros\" \/>\n<meta property=\"og:image\" content=\"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/dockerfile-cache-distribution_1386.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"800\" \/>\n\t<meta property=\"og:image:height\" content=\"600\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Dur\u00e9e de lecture estim\u00e9e\" \/>\n\t<meta name=\"twitter:data1\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/dockerpros.com\/wiki\/dockerfile-cache-distribution\/\",\"url\":\"https:\/\/dockerpros.com\/wiki\/dockerfile-cache-distribution\/\",\"name\":\"Dockerfile -cache-distribution - Dockerpros\",\"isPartOf\":{\"@id\":\"https:\/\/dockerpros.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/dockerpros.com\/wiki\/dockerfile-cache-distribution\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/dockerpros.com\/wiki\/dockerfile-cache-distribution\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/dockerfile-cache-distribution_1386.jpg\",\"datePublished\":\"2024-07-23T12:39:23+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/dockerpros.com\/wiki\/dockerfile-cache-distribution\/#breadcrumb\"},\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/dockerpros.com\/wiki\/dockerfile-cache-distribution\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\/\/dockerpros.com\/wiki\/dockerfile-cache-distribution\/#primaryimage\",\"url\":\"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/dockerfile-cache-distribution_1386.jpg\",\"contentUrl\":\"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/dockerfile-cache-distribution_1386.jpg\",\"width\":800,\"height\":600,\"caption\":\"dockerfile-cache-distribution-2\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/dockerpros.com\/wiki\/dockerfile-cache-distribution\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/dockerpros.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Glossary\",\"item\":\"https:\/\/dockerpros.com\/fr\/wiki\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Dockerfile &#8211;cache-distribution\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/dockerpros.com\/#website\",\"url\":\"https:\/\/dockerpros.com\/\",\"name\":\"Dockerpros\",\"description\":\"DockerPros \u2013 Your Ultimate Docker Resource Hub\",\"publisher\":{\"@id\":\"https:\/\/dockerpros.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/dockerpros.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"fr-FR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/dockerpros.com\/#organization\",\"name\":\"Dockerpros\",\"url\":\"https:\/\/dockerpros.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\/\/dockerpros.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/Dockerpros_logo_blanco.png\",\"contentUrl\":\"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/Dockerpros_logo_blanco.png\",\"width\":532,\"height\":114,\"caption\":\"Dockerpros\"},\"image\":{\"@id\":\"https:\/\/dockerpros.com\/#\/schema\/logo\/image\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Dockerfile -cache-distribution - Dockerpros","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/dockerpros.com\/fr\/wiki\/distribution-du-cache-dockerfile\/","og_locale":"fr_FR","og_type":"article","og_title":"Dockerfile -cache-distribution - Dockerpros","og_description":"The `--cache-distribution` flag in Docker enables efficient caching across multiple builds, optimizing layer reuse and speeding up the build process. This feature enhances CI\/CD workflows by reducing redundancy.","og_url":"https:\/\/dockerpros.com\/fr\/wiki\/distribution-du-cache-dockerfile\/","og_site_name":"Dockerpros","og_image":[{"width":800,"height":600,"url":"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/dockerfile-cache-distribution_1386.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_misc":{"Dur\u00e9e de lecture estim\u00e9e":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/dockerpros.com\/wiki\/dockerfile-cache-distribution\/","url":"https:\/\/dockerpros.com\/wiki\/dockerfile-cache-distribution\/","name":"Dockerfile -cache-distribution - Dockerpros","isPartOf":{"@id":"https:\/\/dockerpros.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/dockerpros.com\/wiki\/dockerfile-cache-distribution\/#primaryimage"},"image":{"@id":"https:\/\/dockerpros.com\/wiki\/dockerfile-cache-distribution\/#primaryimage"},"thumbnailUrl":"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/dockerfile-cache-distribution_1386.jpg","datePublished":"2024-07-23T12:39:23+00:00","breadcrumb":{"@id":"https:\/\/dockerpros.com\/wiki\/dockerfile-cache-distribution\/#breadcrumb"},"inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/dockerpros.com\/wiki\/dockerfile-cache-distribution\/"]}]},{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/dockerpros.com\/wiki\/dockerfile-cache-distribution\/#primaryimage","url":"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/dockerfile-cache-distribution_1386.jpg","contentUrl":"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/dockerfile-cache-distribution_1386.jpg","width":800,"height":600,"caption":"dockerfile-cache-distribution-2"},{"@type":"BreadcrumbList","@id":"https:\/\/dockerpros.com\/wiki\/dockerfile-cache-distribution\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/dockerpros.com\/"},{"@type":"ListItem","position":2,"name":"Glossary","item":"https:\/\/dockerpros.com\/fr\/wiki\/"},{"@type":"ListItem","position":3,"name":"Dockerfile &#8211;cache-distribution"}]},{"@type":"WebSite","@id":"https:\/\/dockerpros.com\/#website","url":"https:\/\/dockerpros.com\/","name":"Dockerpros","description":"DockerPros \u2013 Votre centre de ressources Docker incontournable","publisher":{"@id":"https:\/\/dockerpros.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/dockerpros.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fr-FR"},{"@type":"Organization","@id":"https:\/\/dockerpros.com\/#organization","name":"Dockerpros","url":"https:\/\/dockerpros.com\/","logo":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/dockerpros.com\/#\/schema\/logo\/image\/","url":"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/Dockerpros_logo_blanco.png","contentUrl":"https:\/\/dockerpros.com\/wp-content\/uploads\/2024\/07\/Dockerpros_logo_blanco.png","width":532,"height":114,"caption":"Dockerpros"},"image":{"@id":"https:\/\/dockerpros.com\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/dockerpros.com\/fr\/wp-json\/wp\/v2\/glossary\/1386","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dockerpros.com\/fr\/wp-json\/wp\/v2\/glossary"}],"about":[{"href":"https:\/\/dockerpros.com\/fr\/wp-json\/wp\/v2\/types\/glossary"}],"author":[{"embeddable":true,"href":"https:\/\/dockerpros.com\/fr\/wp-json\/wp\/v2\/users\/1"}],"version-history":[{"count":0,"href":"https:\/\/dockerpros.com\/fr\/wp-json\/wp\/v2\/glossary\/1386\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/dockerpros.com\/fr\/wp-json\/wp\/v2\/media\/2085"}],"wp:attachment":[{"href":"https:\/\/dockerpros.com\/fr\/wp-json\/wp\/v2\/media?parent=1386"}],"wp:term":[{"taxonomy":"glossary-cat","embeddable":true,"href":"https:\/\/dockerpros.com\/fr\/wp-json\/wp\/v2\/glossary-cat?post=1386"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}