DevToolbox

免费在线 Docker Compose 验证器

即时验证和检查 docker-compose.yml 文件。检查语法、服务依赖、端口格式及常见错误——100% 客户端运行,您的配置不会离开浏览器。

100% 客户端处理 · 数据永不离开您的浏览器

使用说明 Docker Compose 验证器

docker-compose.ymlcompose.yml 粘贴到文本区域,然后点击 验证 或按 Ctrl/Cmd+Enter

  • 错误 — 导致 docker compose up 无法运行的严重问题:YAML 语法错误、缺少 services: 键,或 depends_on 引用了未定义的服务。
  • 警告 — 需要审查的非致命问题:过时的 version 字段、服务缺少 imagebuild、服务缺少 restart 策略。
  • 服务面板 — 每个服务的摘要卡片:镜像、构建上下文、端口、卷、环境变量数量和依赖关系。
  • 网络 & 卷 — 文件中定义的所有顶级命名网络和卷。

点击 示例 加载典型的三服务堆栈。使用 Ctrl/Cmd+K 清空。

常见问题

docker-compose.yml 文件是什么?

docker-compose.yml 定义了一个多容器 Docker 应用。它描述每个服务的镜像或构建上下文、端口、卷、环境变量及服务间依赖。Docker Compose 读取此文件,通过一条 docker compose up 命令创建并启动所有服务。

为什么 "version" 字段已过时?

Docker Compose V2 采用了 Compose 规范,不再需要顶级 version 字段。现代 Compose 文件可以省略它。若存在,本工具会发出警告,提示您清理。

depends_on 验证会检查什么?

工具会验证 depends_on 中列出的每个服务名称是否在 services 块中有定义。服务名拼写错误会导致 docker compose up 失败,验证器会在您运行之前提前发现此类问题。

Docker Compose 期望什么样的端口格式?

端口可以写为 "HOST:CONTAINER"(如 "8080:80")、裸容器端口("80")或带协议后缀("80/tcp")。在 YAML 中应始终对端口映射加引号,以避免数字被误解析。

为什么每个服务都应该有重启策略?

没有重启策略时,崩溃的容器不会自动重启。生产环境最常用的值是 restart: unless-stopped。本工具会在未定义重启策略时发出警告。

"image" 和 "build" 有什么区别?

"image" 指定从镜像仓库拉取的预构建镜像;"build" 指定包含 Dockerfile 的本地目录,Compose 会从源码构建镜像。服务可以同时定义两者,此时 build 优先。

我的 docker-compose.yml 会被发送到服务器吗?

不会。验证完全在浏览器中通过 js-yaml 进行 YAML 解析。您的配置文件——可能包含内部主机名或凭证——永远不会离开您的机器。

相关工具