Junior — Middle
Expliquez le concept de construction multi-étapes d'une image Docker et pourquoi elle est utilisée.
sobes.tech IA
Réponse de l'IA
La construction multi-étapes d’une image Docker (build multi-étapes) permet d’utiliser plusieurs phases de construction dans un seul Dockerfile. Cela aide à créer des images compactes et optimisées, en séparant les étapes de construction de celles d’exécution.
Dans la première étape, on peut utiliser une image avec des outils pour compiler et construire l’application, et dans les étapes suivantes — seulement une image minimale avec les fichiers nécessaires pour exécuter.
Avantages :
- Réduit considérablement la taille de l’image finale.
- Élimine les dépendances et outils inutiles de l’image finale.
- Simplifie la maintenance et la mise à jour du Dockerfile.
Exemple :
# Étape de construction
FROM openjdk:11-jdk AS build
WORKDIR /app
COPY . .
RUN ./gradlew build
# Étape d’exécution
FROM openjdk:11-jre
WORKDIR /app
COPY --from=build /app/build/libs/myapp.jar ./
CMD ["java", "-jar", "myapp.jar"]