Maison > développement back-end > Golang > le corps du texte

## Comment pré-mettre en cache les dépendances Go dans les images Docker pour des builds plus rapides ?

Susan Sarandon
Libérer: 2024-10-26 18:50:03
original
122 Les gens l'ont consulté

## How to Pre-Cache Go Dependencies in Docker Images for Faster Builds?

Créer efficacement des images Docker avec des dépendances pré-mises en cache

Lors de la construction d'images Docker, il est crucial de minimiser le temps de construction. Une stratégie consiste à mettre en cache les dépendances. Cependant, cela nécessite d'abord de créer les dépendances, ce qui peut prendre du temps.

Existe-t-il un moyen de pré-construire plusieurs dépendances répertoriées dans le fichier go.mod ?

La réponse réside dans en utilisant les mécanismes de mise en cache de Docker. La structure Dockerfile suggérée comprend une couche de mise en cache cruciale :

FROM scratch
COPY --from=build /out/example /
Copier après la connexion

Cette étape copie l'exécutable construit à partir d'une étape de construction intermédiaire dans l'image finale. Cependant, l'ingrédient clé se trouve dans la phase de construction :

RUN --mount=type=cache,target=/root/.cache/go-build go build -o /out/example .
Copier après la connexion

Cette commande monte le répertoire de cache go build par défaut (/root/.cache/go-build) et exécute la commande go build. Le cache garantit que les dépendances ne sont téléchargées et compilées qu'une seule fois, réduisant considérablement les temps de build pour les builds suivantes.

Pour activer la mise en cache, il est essentiel de définir la variable d'environnement DOCKER_BUILDKIT sur 1 :

DOCKER_BUILDKIT=1 docker build -t myimage .
Copier après la connexion

En suivant ces étapes, vous pouvez pré-créer toutes les dépendances dans go.mod et tirer parti de la mise en cache pour rationaliser la création de vos images Docker.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!