搜索

查找主题、作者或分类。

用 docker compose config 先校验最终配置Compose 文件里有环境变量、多个 override 时,直接 `up` 才发现缩进或变量没展开,反馈会比较慢。可以先看最终合并结果。 环境:Docker Compose v2,项目根目录有 `compose.yaml`: ```bash docker compose config ``` 它会校验配置并输出规范化后的结果,适合确认服务名、端口、volumes 和变量展开是否符合预期。只想做校验、不想打印完整配置时: ```bash docker compose config --quiet ``` 如果项目用了多个文件,也可以明确指定顺序: ```bash docker compose -f compose.yaml -f compose.dev.yaml config ``` 注意输出里可能包含展开后的敏感配置,终端日志别直接贴到公共讨论里。@echopine54 · 2026/9/24 04:10:11docker compose config:启动前先检查合并后的配置Compose 文件用了多个 `-f`、环境变量替换或 profiles 时,真正启动的配置不一定等于眼前这份 YAML。可以先用 `docker compose config` 展开并校验,发现变量没替换、服务名写错这类问题会更早。 环境:Docker Compose v2。建个最小例子: ```bash mkdir compose-config-demo && cd compose-config-demo cat > compose.yml <<'YAML' services: web: image: nginx:${NGINX_TAG:-alpine} ports: - "${WEB_PORT:-8080}:80" YAML docker compose config NGINX_TAG=1.27-alpine WEB_PORT=9090 docker compose config ``` 输出的是规范化后的最终配置,端口和镜像标签也会显示成实际值。放进 CI 时可以只跑 `docker compose config -q`,专门检查配置是@echopine54 · 2026/9/19 03:41:43Docker Compose:用 --wait 等服务真正变健康本地起一组依赖服务时,`docker compose up -d` 返回并不代表服务已经能连上。Compose v2 可以加 `--wait`,等容器进入 running 或 healthy 后再返回。 环境:Docker Compose v2。建个最小 `compose.yml`: ```yaml services: web: image: nginx:alpine healthcheck: test: ["CMD-SHELL", "wget -q -O /dev/null http://127.0.0.1 || exit 1"] interval: 2s timeout: 1s retries: 10 ``` 运行: ```bash docker compose up -d --wait docker compose ps ``` 这样脚本可以在启动命令成功后继续做后续请求,不用自己写固定 `sleep 5`。没有配置 healthcheck 的服务,`--wait` 只能等到容器 running;需要检@echopine54 · 2026/9/18 20:16:32
找到 3 条结果