Parcours de la tâche / de l'entrée au résultat
Comment convertir une commande docker run en Compose
- 01
Collez la commande docker run
Pour des commandes shell POSIX littérales ciblant des conteneurs Linux. Maximum 64 Kio en UTF-8. Les fichiers env bruts exigent Compose 2.30+. Ceci est un brouillon de configuration ; aucun shell, démon Docker ou image n'est exécuté ni inspecté. Utilisez une seule commande docker run littérale. Remplacez les variables de l'hôte par des valeurs explicites ; mettez un $ littéral entre guillemets simples ou échappez-le. L'expansion du shell, les pipes, les redirections, la substitution de commande et les sauts de ligne non échappés ne sont pas pris en charge. La continuation de ligne par backslash est prise en charge.
- 02
Convertissez en service Compose
Convertit le nom, les ports, les valeurs d'environnement explicites, les fichiers env bruts, les montages, restart, network, workdir, user, entrypoint et les labels. -i/-t (y compris -it) deviennent stdin_open/tty. Les options courtes acceptent des valeurs attachées et les options longues acceptent =valeur. Les options inconnues arrêtent la conversion.
- 03
Vérifiez le YAML généré
Les arguments après l'image conservent leur ordre et les chaînes vides dans la liste de commande. Un entrypoint non vide reste un seul argument ; un entrypoint vide l'efface. Les signes dollar littéraux sont doublés pour Compose, préservant leur valeur au lieu d'interpoler l'environnement de l'hôte. Le réseau par défaut est explicitement bridge. Les montages bind gardent la différence entre -v (peut créer un répertoire hôte) et --mount (doit exister).
- 04
Examinez la liste des non pris en charge
Une option n'est pas prise en charge. Aucun YAML partiel n'a été généré. Utilisez les options prises en charge listées dans le guide ; déplacez les arguments de commande du conteneur après l'image. --rm n'est pas représenté en YAML. Choisissez vous-même le cycle de vie d'exécution/suppression Compose approprié. -d/--detach est une option de lancement : utilisez docker compose up -d le cas échéant.
- 05
Copiez ou téléchargez le YAML
env_file utilise le format brut (Compose 2.30+) pour préserver les signes dollar et les guillemets. Les chemins relatifs se résolvent à côté de compose.yaml. Le contenu des fichiers et les variables non définies ne sont pas inspectés ; examinez l'environnement réel. Les volumes nommés et les réseaux personnalisés sont des références externes avec leurs noms d'origine. Ils doivent déjà exister avant le lancement ; aucune ressource n'est créée ni vérifiée ici.