docker runコマンドとDocker Compose YAMLを即座に変換します。
| フラグ | Composeキー | 例 |
|---|---|---|
| --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 |
生成されたYAMLはCompose仕様(Docker Compose V2+で使用)に従います。レガシーversion:キーは意図的に省略されています — これは非推奨であり、最新のDocker DesktopおよびDocker Engineでは不要です。
docker runコマンドは、ポート、ボリューム、環境変数、ネットワークの複数のフラグを含むと管理が困難になります。docker-compose.ymlはバージョン管理可能で、読みやすく、単一の「docker compose up」コマンドで複数サービスのオーケストレーションをサポートします。
コンバーターは最も一般的なフラグをサポートしています:-d/--detach、--name、-p/--publish、-e/--env/--env-file、-v/--volume、--network、--restart、--memory/-m、--cpus、--user、--workdir/-w、--entrypoint、--label/-l、およびCMDによる複数ワードコマンド。イメージとタグは常に抽出されます。
通常、シンプルなサービスでは生成されたYAMLはそのまま動作します。複雑なセットアップでは、depends_on、healthcheck、ビルドコンテキスト、またはシークレットを追加することもできます。ジェネレーターは拡張可能な最小限の正確な出発点を作成します。
コンバーターはversion:キーなしのモダンなComposeフォーマットを生成し、Compose仕様(Docker Compose V2以降で使用)に従います。version:キーは最新の仕様では非推奨です。