SuperAPI AI 工具集

docker-management

部署与运维

查看项目

更新于 10-16 00:03

技能介绍

用途:当任务涉及 Dockerfile 编写、Compose 栈设计、镜像仓库操作、多阶段构建优化、生产容器模式或容器运行时排障时加载本技能。

主要能力: Dockerfile:多阶段构建(FROM ... AS builder 分离构建依赖与运行时镜像以缩小体积);层优化(按变更频率从低到高排列指令,合并 RUN apt-get update && apt-get install -y ... && rm -rf /var/lib/apt/lists/*);最佳实践(使用具体基础镜像标签而非 :latest、COPY --chown、HEALTHCHECK、LABEL、EXPOSE、ENTRYPOINT + CMD、.dockerignore)。 Compose:服务定义(image、build、ports、volumes、environment、depends_on、healthcheck、restart、networks);生产关注点(命名卷、前后端与数据库网络隔离、unless-stopped 重启策略、deploy.resources 资源限制、日志驱动与轮转);多文件覆盖(docker-compose -f docker-compose.yml -f docker-compose.prod.yml config)。 镜像仓库:docker tag、docker push、docker pull、docker login 或凭据助手;支持 Docker Hub、GHCR、GitLab、ECR、Google Artifact Registry、Azure ACR、自建 Harbor 等;标签策略建议用 git-sha 追溯、semver 发布,latest 仅作便利指针。 容器网络:bridge、host、overlay、macvlan、none 驱动;内嵌 DNS 服务名解析;--dns 与 --dns-search 覆盖;常见问题包括 DNS 缓存、端口冲突、默认绑定所有接口(可用 127.0.0.1:PORT:PORT 限制)。

使用方式:按上述命令与配置约定编写 Dockerfile 和 Compose 文件,结合 .dockerignore 控制构建上下文,通过多文件覆盖区分开发与生产配置。

适用场景:镜像构建与瘦身、Compose 编排、仓库推送拉取、网络配置与容器运行时故障排查。

限制与陷阱:构建上下文膨胀(务必添加 .dockerignore);缓存失效(易变内容放最后);无 init 导致僵尸进程(使用 tini 或 --init);绑定挂载权限不匹配(统一 USER 指令);基础镜像未固定(建议固定 SHA256 摘要或具体 semver)。