Skills · Claude Code · Agent Skills
镜像要上生产:最小化、非 root、已签名 — 没有商量余地。
按 digest 固定的多阶段 Dockerfile,非 root,层中无密钥,附带 SBOM、会阻断的扫描与 cosign 签名。容器启动时不带任何特权。
schematize-docker · v0.2.0bash
$ schematize install docker不可妥协的底线
绝不为“求快”而关闭。完整清单见技能。
按 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 确认。
讨论
加载中…