CLIDOCKER RUN 命令
YMLDOCKER-COMPOSE.YML
version: '3.9'
services:
web:
image: nginx:alpine
container_name: web
restart: unless-stopped
networks:
- mynet
ports:
- '8080:80'
- '443:443'
environment:
DB_HOST: db
DB_USER: root
volumes:
- /data:/var/www
关于 docker run 转 compose
一条又长又难记的 docker run 命令塞满了 -p、-v、-e 和各种参数,换台机器就得重新敲一遍。本工具在浏览器本地把 docker run 命令解析并转换成结构清晰的 docker-compose.yml,自动映射端口、卷、环境变量、网络等参数,便于版本管理和复用。整个解析过程在本机完成,命令中的密钥与路径不会上传。 建议在日常开发中收藏本工具,遇到数据格式转换需求时即可快速打开使用。所有转换均在浏览器本地完成,数据不会上传,可放心粘贴敏感内容。
使用场景
- 固化部署 — 把临时的 docker run 转成 compose 文件,纳入仓库做版本管理。
- 迁移环境 — 把开发机上的运行命令转成 compose,在测试或生产环境一键复现。
- 梳理参数 — 把堆叠的命令行参数结构化,看清端口、卷和环境变量映射。
- 多容器编排 — 把几条独立的 run 命令转成 compose 服务,统一管理依赖。
- 文档沉淀 — 把口口相传的启动命令转成可读 YAML,写进部署文档。
常见问题
支持哪些 docker run 参数?
常用的 -p 端口、-v 卷、-e 环境变量、--name、--network、--restart、-d 等都能识别并映射到 compose 对应字段。极少见或最新加入的参数可能需要手动补充。
生成的是哪个 compose 版本?
通常输出兼容性较好的 v3 结构。你可以根据自己的 Docker 环境微调 version 字段,或删除该字段使用 Compose 规范的默认行为。
多个 -e 环境变量会怎么处理?
每个 -e 都会被解析为 environment 列表中的一项;若值里含等号或空格,请确保原命令已正确引号包裹,工具按原样保留。
能反向把 compose 转回 run 吗?
本工具目前只做 run 到 compose 的单向转换。反向转换涉及多服务拆分,逻辑复杂,暂不支持。
转换后能直接 docker compose up 吗?
大多数情况可以,但建议生成后通读一遍 YAML,确认卷路径、镜像标签和网络名称符合目标环境,再启动。
有浏览器兼容性要求吗?
本工具兼容所有现代浏览器(Chrome、Firefox、Edge、Safari),无需安装任何插件或扩展。
可以离线使用吗?
首次加载后,部分功能在离线状态下仍可使用。页面资源加载后,核心逻辑完全在浏览器本地运行,不依赖网络。