用途:把本地 compose.yaml 加固为更适合真实服务器运行的配置,面向 Linux Docker 主机与 docker compose,适用于 homelab、VPS 和单机自托管栈。
主要能力:区分无状态与有状态服务;用 deploy.resources 设置内存与 CPU 上限及预留;为长驻服务设置 restart: unless-stopped,一次性任务用 restart: "no" 或 on-failure;为每个服务配置 json-file 日志轮转(如 max-size 10m、max-file 3);添加 healthcheck 并用 depends_on 的 service_healthy 或 service_completed_successfully 控制启动顺序;审计命名卷并定义备份路径与保留策略。
使用方式:先运行 docker compose version、docker compose config、docker info 侦察环境;已有栈可用 docker compose ps、docker stats --no-stream、du -sh /var/lib/docker/containers//-json.log 查看现状。修改后运行 docker compose config 校验,再 docker compose up -d 并用 docker compose ps、docker compose logs --tail=100、docker inspect CONTAINER --format='{{json .State.Health}}' 等验证。
适用场景:部署前加固、审查现有 compose 文件、限制单容器占用、崩溃后自动重启、防止日志占满磁盘、等待依赖健康后再启动、避免命名卷数据无备份。
限制:不涉及 Dockerfile 优化、Kubernetes、Swarm 或云编排;仅针对单机 Compose 可靠性。健康检查本身不会重启不健康容器,重启由 Docker Engine 的重启策略负责;read_only、cap_drop 等加固需谨慎,可能影响需要写缓存或额外权限的服务;命名卷不等于备份,重要数据仍需复制到主机之外。资料未提供具体收费、平台支持范围或效果保证。