Convertissez instantanément entre les commandes docker run et Docker Compose YAML.
| Indicateur | Clé Compose | Exemple |
|---|---|---|
| --name | container_name | --name myapp |
| -p / --publish | ports | -p 8080:80 |
| -e / --env | environment | -e NODE_ENV=prod |
| -v / --volume | volumes | -v /host:/container |
| --network | networks | --network appnet |
| --restart | restart | --restart unless-stopped |
| --entrypoint | entrypoint | --entrypoint "/bin/sh" |
| -m / --memory | mem_limit | -m 512m |
| --cpus | cpus | --cpus 1.5 |
| -u / --user | user | -u 1000:1000 |
| -w / --workdir | working_dir | -w /app |
| -l / --label | labels | -l app=myapp |
Le YAML généré suit la Spécification Compose (utilisée par Docker Compose V2+). La clé héritée version: est intentionnellement omise — elle est dépréciée et n'est plus requise par Docker Desktop et Docker Engine modernes.
Les commandes docker run deviennent difficiles à gérer dès qu'elles incluent plusieurs flags pour les ports, volumes, variables d'environnement et réseaux. Un docker-compose.yml est versionné, lisible et supporte l'orchestration multi-services avec une seule commande 'docker compose up'.
Le convertisseur supporte les flags les plus courants : -d/--detach, --name, -p/--publish, -e/--env/--env-file, -v/--volume, --network, --restart, --memory/-m, --cpus, --user, --workdir/-w, --entrypoint, --label/-l et les commandes multi-mots via CMD. L'image et le tag sont toujours extraits.
Pour les services simples, le YAML généré fonctionne généralement tel quel. Pour les configurations complexes, vous souhaiterez peut-être ajouter depends_on, healthcheck, le contexte de build ou des secrets. Le générateur crée un point de départ minimal et correct que vous pouvez étendre.
Le convertisseur génère le format Compose moderne sans clé version:, suivant la Spécification Compose (utilisée par Docker Compose V2 et ultérieur). La clé version: est dépréciée dans la dernière spécification.