P
💻DeveloppementIntermediaireChatGPT

Créer un Dockerfile optimisé pour la production

Créez un Dockerfile multi-stage optimisé pour la production avec sécurité maximale, image légère et meilleures pratiques.

Coller dans votre IA

Collez ce prompt dans ChatGPT, Claude ou Gemini et personnalisez les variables entre crochets.

Tu es un expert Docker et DevOps spécialisé dans l'optimisation des conteneurs pour la production. Je dois créer un Dockerfile optimisé pour l'application suivante :

Type d'application : [EX: API Node.js, application Python Flask, application Go, frontend React]
Version du runtime : [EX: Node.js 20, Python 3.12, Go 1.22]
Dépendances : [EX: PostgreSQL client, Redis, librairies système spécifiques]
Variables d'environnement sensibles : [LISTER_LES_VARS_SANS_VALEURS]
Commande de démarrage : [EX: npm start, gunicorn app:app, ./binary]

Crée un Dockerfile de production qui respecte toutes les meilleures pratiques :

  1. Multi-stage build : sépare les étapes de build et de runtime pour minimiser la taille de l'image finale.
  2. Image de base : choisis l'image de base la plus légère et sécurisée appropriée (Alpine, Distroless, Slim).
  3. Utilisateur non-root : crée et utilise un utilisateur sans privilèges pour des raisons de sécurité.
  4. Optimisation du cache : ordonne les instructions pour maximiser l'utilisation du cache Docker.
  5. Gestion des secrets : utilise des build args pour les secrets de build, jamais de secrets dans les layers.
  6. Health check : ajoute une instruction HEALTHCHECK appropriée.
  7. Métadonnées : ajoute les labels LABEL standards (maintainer, version, description).

Fournis également un fichier .dockerignore adapté et une commande docker build et docker run de test.

Utile à 100%

Personnaliser ce prompt avec Léa

Léa réécrit ce prompt pour ton métier et ton objectif précis — 3 questions suffisent.

Pourquoi ce prompt fonctionne

<p>Ce prompt cible les quatre axes d'optimisation Docker les plus importants en production : la taille de l'image (multi-stage, Alpine), la sécurité (utilisateur non-root, pas de secrets dans les layers), les performances de build (optimisation du cache) et la fiabilité (health checks).</p><p>La demande d'un .dockerignore en plus du Dockerfile est souvent négligée mais cruciale : un .dockerignore mal configuré peut inclure accidentellement des fichiers sensibles (node_modules, .env) ou gonfler inutilement le contexte de build.</p><p>En spécifiant le type d'application et le runtime dès le départ, l'IA peut choisir les images de base optimales (par exemple Distroless pour Go, Node Alpine pour Node.js) plutôt que de proposer un Dockerfile générique peu adapté au contexte réel.</p>

Cas d'usage

Conteneurisation d'applications pour la productionAudit de Dockerfiles existantsRéduction de la taille et du temps de build

Résultat attendu

Un Dockerfile multi-stage complet, un .dockerignore adapté et les commandes de build et run avec explications.

Améliorez ce prompt

Passez ce prompt dans l'Optimiseur pour renforcer le contexte, les contraintes et le format attendu.

Améliore ce prompt avec l'Optimiseur

Commentaires

  • LéaIA

    Astuce : pour Node.js, remplacez `npm install` par `npm ci` dans le stage de build. Cela force l'utilisation exacte du `package-lock.json` (installations reproductibles) et est plus rapide. Ajoutez `--production` pour exclure les devDependencies. Copiez d'abord `package*.json` puis les dépendances avant le code source pour maximiser le cache Docker.

📬 Recevez de nouveaux prompts chaque semaine

Rejoignez notre newsletter et ne manquez aucun prompt.

Pour aller plus loin

Prompts similaires

💻DeveloppementDebutantAll AIs

Réponses aux commentaires de marque

Gestion cohérente et rapide de la communauté social media

0219
💻DeveloppementIntermediaireClaude

Revue de code complète pour pull request

Obtenez une revue de code exhaustive couvrant qualité, performance, sécurité et maintenabilité pour n'importe quel langage.

34561
💻DeveloppementAvanceChatGPT

Maîtriser les types avancés TypeScript

Renforcez la sécurité de type de votre code TypeScript avec des types génériques avancés, utility types et discriminated unions.

39549
💻DeveloppementIntermediaireAll AIs

Prompt Perplexity pour générer du code Python

Perplexity AI se distingue des autres assistants IA par sa capacité unique à combiner recherche web en temps réel et génération de code. Lorsqu'il s'agit de produire du code Python, cet avantage devient considérable : Perplexity peut s'appuyer sur la documentation officielle la plus récente, les meilleures pratiques actuelles et les bibliothèques à jour pour générer du code fiable et moderne. Contrairement à un LLM classique dont les connaissances sont figées à une date de coupure, Perplexity vérifie ses sources en temps réel, ce qui réduit drastiquement le risque de code obsolète ou de fonctions dépréciées. Que vous soyez développeur cherchant à accélérer votre workflow, data scientist souhaitant prototyper rapidement, ou débutant apprenant Python, un prompt bien structuré transforme Perplexity en un véritable assistant de développement. La clé réside dans la précision de votre demande : en spécifiant le contexte technique, les contraintes et le format de sortie attendu, vous obtenez du code production-ready plutôt qu'un simple snippet générique. Ce guide vous propose des prompts optimisés pour tirer le maximum de Perplexity dans vos projets Python.

0204