Générateur Docker Compose
Écrire un docker-compose.yml à la main impose de se rappeler l’indentation exacte, de mettre chaque mappage de ports entre guillemets et de savoir quelle chaîne de version votre binaire Compose comprend. Ce générateur vous permet de définir des services avec des champs simples : un nom, une image, des mappages de ports hôte:conteneur et des volumes. Il produit un fichier YAML valide conforme au spec Compose moderne (sans clé de version) avec des valeurs par défaut sensées.
Comment construire un fichier Compose
-
1
Ajouter des services
Indiquez pour chaque service un nom, une image, des mappages de ports hôte:conteneur et des volumes. Deux services de départ sont déjà remplis.
-
2
Modifier ou supprimer des lignes
Modifiez directement n'importe quel champ, ajoutez un service avec le bouton + Service ou supprimez une ligne dont vous n'avez pas besoin.
-
3
Vérifier le YAML généré
L'aperçu se met à jour pendant la saisie : les mappages de ports sont entre guillemets et la clé de version est omise, comme l'attend le spec Compose moderne.
-
4
Copier le fichier
Copiez le docker-compose.yml généré et collez-le à la racine de votre projet.
Le spec Compose moderne
Compose V2 (le plugin fourni avec Docker Desktop et les moteurs Docker récents) suit la Compose Specification. La clé version: est dépréciée ; le générateur l’omet. Les clés de premier niveau sont services, networks, volumes, configs et secrets.
Anatomie d’un service
Un service orienté production ressemble à ceci :
services:
web:
image: nginx:1.27-alpine
restart: unless-stopped
ports:
- "80:80"
volumes:
- ./public:/usr/share/nginx/html:ro
depends_on:
app:
condition: service_healthy
networks:
- frontend
- backend
healthcheck:
test: ["CMD", "wget", "--spider", "-q", "http://localhost/health"]
interval: 30s
timeout: 5s
retries: 3
Volumes : montage lié ou volume nommé
- Montage lié (
./app:/var/www) relie le conteneur à un chemin de l’hôte ; idéal pour le développement local car les changements sont visibles immédiatement. - Volume nommé (
pgdata:/var/lib/postgresql/data) est géré par Docker et persiste indépendamment de tout chemin de l’hôte ; le bon choix pour les bases de données et tout ce que vous ne voulez pas supprimer par accident avecrm -rf. - Volume anonyme - à éviter. Il survit aux redémarrages mais disparaît sans avertissement avec
docker compose down -v.
Réseaux
Par défaut, Compose crée un réseau portant le nom du projet et y connecte chaque service. Déclarer des réseaux explicites est utile quand :
- Vous voulez isoler une base de données d’un service exposé au public.
- Vous avez besoin d’un pont avec un sous-réseau personnalisé pour vous aligner sur l’infrastructure existante.
- Vous voulez rattacher des conteneurs à un réseau externe préexistant (
external: true).
Erreurs courantes à éviter
- Conflits de clé de version.
version: "3.8"en tête empêche les fonctionnalités récentes commestart_intervaldu healthcheck de fonctionner avec un ancien Compose ; le générateur omet la clé de version. - Guillemets autour des ports.
8080:80est interprété comme du YAML en base 60 dans certains cas limites ; le générateur met toujours les mappages de ports entre guillemets. - Secrets codés en dur. Les secrets écrits directement dans compose.yml finissent dans Git. Placez-les dans un
env_fileou dans le gestionnaire de secrets de la plateforme. - depends_on sans condition. Un
depends_on: [db]simple attend le démarrage du conteneur, pas que le service soit prêt. Utilisezcondition: service_healthyet ajoutez un healthcheck à la dépendance.
Questions fréquentes
La Compose Specification actuelle (alignée sur Docker Compose V2). Le fichier omet la clé version:, c’est ainsi que s’écrivent les fichiers Compose modernes. Il fonctionne avec Docker Compose V2.22 et plus récent.
Pas via le formulaire dans cette version. Le générateur se concentre sur les définitions de services avec image, ports et volumes. Vous pouvez ajouter réseaux, variables d’environnement, healthchecks et autres clés au YAML généré à la main avant de l’utiliser.
Non, cet outil est dédié à compose.yml. Pour les Dockerfiles, utilisez le Générateur de Dockerfile, qui gère le choix de l’image de base et l’ordre des instructions COPY/RUN pour cinq technologies.
Non. Les définitions de services servent uniquement à construire le YAML sur cette page. Elles ne sont ni enregistrées, ni téléversées, ni partagées.
Outils similaires
Référence de la table ASCII
Table ASCII complète de 0 à 127 avec décimal, hexadécimal, octal, binaire et référence numérique HTML pour chaque caractère, y compris les codes de contrôle comme NUL, LF et DEL.
Référence des caractères HTML
Liste consultable des entités HTML, de leurs codes nommés et numériques, et un copier-coller en un clic pour les caractères et symboles spéciaux.
Générateur de carte CSS
Créez le CSS d’un conteneur de carte : fond, bordure, rayon des angles, espacement intérieur et ombre douce, avec aperçu immédiat et code à copier-coller.
Référence des raccourcis clavier
Recherchez les raccourcis par défaut documentés de VS Code, Chrome et Bash avec GNU Readline sous macOS, Windows et Linux.
Générateur d’accordéon CSS
Créez un accordéon de trois sections avec details et summary. Personnalisez textes, couleurs, espacements, icône et ouverture, puis copiez ou téléchargez le code.
Recherche de nom de couleur
Trouvez la couleur nommée CSS standardisée la plus proche d’une valeur HEX, RGB ou HSL grâce à l’écart CIEDE2000.
Outil disponible dans d’autres langues
- Docker Composeジェネレーター [JA]
- Docker-Compose-Generator [DE]
- Generator Docker Compose [ID]
- Docker Compose 생성기 [KO]
- Docker Compose 生成器 [ZH]
- Generador de Docker Compose [ES]
- Docker Compose-generator [SV]
- Trình tạo Docker Compose [VI]
- Docker Compose Oluşturucu [TR]
- Docker Compose-generator [NL]
- ตัวสร้าง Docker Compose [TH]
- Docker Compose Generator [EN]
- Gerador de Docker Compose [PT]
- مولّد Docker Compose [AR]
- Generator Docker Compose [PL]
- Generatore di Docker Compose [IT]
- Генератор Docker Compose [RU]