Middle+
Qu'est-ce que la construction multi-étapes dans Docker ? À quoi ça sert ?
sobes.tech IA
Réponse de l'IA
La construction multi-étapes dans Docker permet d'utiliser plusieurs phases de build dans un seul Dockerfile. Cela aide à créer des images compactes et optimisées, en séparant les étapes de build et d'exécution finale de l'application.
Par exemple, à la première étape, vous pouvez compiler l'application avec les outils et dépendances nécessaires, et à la deuxième, copier uniquement les artefacts compilés dans une image minimale sans fichiers ni outils de build inutiles.
Avantages:
- Réduction de la taille de l'image finale
- Amélioration de la sécurité (moins de composants dans le conteneur final)
- Clarté et facilité de gestion du Dockerfile
Exemple:
# Étape de build
FROM golang:1.20 AS builder
WORKDIR /app
COPY . .
RUN go build -o myapp
# Image finale
FROM alpine:latest
COPY --from=builder /app/myapp /usr/local/bin/myapp
CMD ["myapp"]