在 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、構建上下文或 secrets。生成器創建一個最小、正確的起點,您可以在此基礎上擴展。
轉換器生成不帶 version: 鍵的現代 Compose 格式,遵循 Compose 規範(Docker Compose V2 及更高版本使用)。version: 鍵在最新規範中已棄用。