Skills · Claude Code · Agent Skills

镜像要上生产:最小化、非 root、已签名 — 没有商量余地。

按 digest 固定的多阶段 Dockerfile,非 root,层中无密钥,附带 SBOM、会阻断的扫描与 cosign 签名。容器启动时不带任何特权。

v0.2.0Disciplina · Containers/OCIgithub.com/schematizeme/skill-docker

维护者 Lucas Andrade

schematize-docker · v0.2.0bash
$ schematize install docker
GitHub →下载技能 (.zip)/docker-help · github.com/schematizeme/schematize-cli

不可妥协的底线

绝不为“求快”而关闭。完整清单见技能。

按 digest 固定基础镜像

写成 FROM image:tag@sha256,不用浮动标签或 latest;digest 由 Renovate 或 Dependabot 通过带扫描的 PR 更新。

使用数字 UID 的非 root

最终阶段设置 USER 10001:10001;没有 USER,容器就是 root。

密钥不进 ARG、ENV 与镜像层

构建密钥只能通过 RUN --mount=type=secret;运行时密钥在启动时注入。禁止 COPY .env 和私钥。

最小化多阶段镜像

工具链只留在构建阶段;最终镜像只含二进制或运行时,并用 .dockerignore 排除 .env 和 .git。

出厂带有来源证明

推送时附 SBOM 与 provenance,扫描遇 HIGH/CRITICAL 即阻断,按 digest 做 cosign 签名并在准入时验证。

不可变标签与按 digest 部署

标签即 git sha,部署引用 digest,部署用 registry 中不存在 latest,回滚就是重新部署上一个 digest。

无特权容器

read_only、cap_drop ALL、no-new-privileges 并设资源上限;绝不使用 --privileged、挂载 docker.sock 或 net=host。

命令

安装在 .claude/commands/。随时运行 /docker-help。

/docker-build参照示例生成或调整技术栈的 Dockerfile,并证明其通过门禁。
/docker-ccContext compact:将上下文和清单写入归档并运行 /compact。
/docker-claude在仓库根目录创建或合并常开的 Docker CLAUDE.md(不覆盖其他技能的区块)。
/docker-compose审计或生成 dev/hml 的 compose:profiles、healthcheck、封闭的数据库、.env 不入 git。
/docker-handoff生成上下文交接而不压缩——会话结束或任务切换。
/docker-harden加固镜像与运行时:最小基础镜像、非 root、只读、cap_drop 与资源上限。
/docker-help列出所有命令。
/docker-load强制加载全部规范内容:Dockerfile、供应链、运行时、compose 与各语言。
/docker-review对照底线审查 Dockerfile 和 compose:运行两个门禁(有 hadolint 时一并运行),并检查机器读不出的部分。
/docker-scan会阻断的扫描,加上 SBOM、provenance、签名与验证(trivy、grype 或 scout,cosign)。

面向 AI 智能体

无需人工即可安装。元数据见 llms.txt。

  • 运行:git clone https://github.com/schematizeme/skill-docker.git && ./skill-docker/install.sh
  • 或下载:https://github.com/schematizeme/skill-docker/releases/latest/download/skill-docker.zip 并解压到 .claude/skills/
  • 将 assets/CLAUDE.md 复制到仓库根目录(常开规则)。
  • 用 /docker-help 确认。

不想安装?

阅读完整规范并直接复制到你的项目——或安装该技能,让智能体自动执行。