Agent Skills
返回列表
🔒

Docker 容器化全栈

IT 运维与安全 更新于 2026.08.30

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_f12a44b7/self-dev-docker。

技能介绍

解决的问题

Docker 项目里的故障很少是单一命令错误,更多来自镜像不可复现、构建缓存失效、容器以 root 运行、资源没有上限、日志写满磁盘、网络解析失败、端口暴露不当、Compose 依赖过早、匿名卷累积,以及 ENV、COPY、build args 把敏感信息写进镜像历史。工程师在排障时常常需要在命令、Dockerfile、Compose、网络和卷之间反复切换,缺少一套稳定的检查顺序。

技能如何工作

该技能把 Docker 容器化任务整理成可直接引用的规则与陷阱清单:

  • 镜像构建:优先固定基础镜像版本,例如 python:3.11.5-slim;合并 RUN 包管理步骤;多阶段构建中明确 stage;先复制依赖清单,再安装依赖,最后复制源码。
  • 运行与排障:给容器设置内存等限制,配置日志轮转;理解退出码 137 与 139,通过 docker inspect、docker logs、docker cp 查看死容器状态。
  • 网络与卷:自定义网络里使用容器 DNS;本地访问绑定 127.0.0.1;使用 named volumes;处理 bind mount 的 host user 与 container user 权限问题。
  • 安全与清理:避免 ENV、COPY、build args 保存 secret;优先使用 secrets mount 或运行时环境变量;谨慎使用 --privileged;定期执行 image、builder、container、network 清理。

适用边界

它适合 Dockerfile、Docker Compose、镜像发布、容器调试和主机级容器运维,不替代 Kubernetes 编排、云平台 IAM、GitOps 或应用层架构设计。对于 distroless 镜像、无 shell 场景,需要结合 docker cp 或 debug sidecar 处理。

使用场景

  • 构建 Python 服务镜像时,需要固定基础版本、合并包安装并优化构建缓存。
  • 排查容器因内存超限被杀或段错误退出,需要读取退出码、日志并检查资源限制。
  • 用 Compose 起多服务,需要修正 depends_on、env 目录和命名卷挂载问题。
  • 发布镜像前检查非 root、日志轮转、端口绑定和 secret 是否写进镜像历史。

适合人员

  • 负责 Python 微服务打包的后端工程师:希望构建可复现、非 root 的镜像。
  • 维护内部工具部署的运维工程师:希望排查 OOM、日志写满和端口占用。
  • 配置多服务联调的全栈工程师:希望修好 Compose 依赖、卷挂载与环境变量。
  • 审核容器安全的基础设施工程师:希望避免 secret 进入镜像层并清理无用资源。