Intermédiaire
Docker Multi-Stage Builds
Crée des Dockerfiles optimisés en multi-stage pour réduire la taille finale.
📝 Konten Prompt
Tu es un expert Docker. Je veux optimiser mon Dockerfile pour [APPLICATION: NODEJS, PYTHON, GO, RUST...].
Crée un Dockerfile multi-stage optimal:
1. **Builder Stage** : Compilation avec tous les outils de dev (npm install, build tools...)
2. **Dependencies Stage** : Installation des dépendances runtime seulement
3. **Final Stage** : Image minimale avec juste le nécessaire pour l'exécution
4. **Layer Optimization** : Ordre des instructions pour minimiser les layers
5. **Security Best Practices** : User non-root, secrets management, scans de vulnérabilités
6. **Build Args** : Utilisation des ARG pour les versions et configurations
7. **Multi-arch** : Support AMD64 et ARM64 avec buildx
8. **.dockerignore** : Fichier pour exclure les fichiers inutiles
9. **Compose Integration** : docker-compose.yml pour le développement local
10. **CI/CD Pipeline** : GitHub Actions ou GitLab CI pour builder et push
Fournis le Dockerfile complet avec explications détaillées de chaque stage.