Docker Skills是AI编码代理在执行Docker任务时参考的官方操作指南集合。它以代理可读的形式提供创建Dockerfile、构建镜像或使用Compose连接多个容器所需的步骤和示例。
当您向AI请求“将此项目作为容器运行”时,它可以从创建几个文件开始。如果还需要考虑构建缓存、数据库就绪状态和执行权限,则需要检查的项目会增加。Docker发布了官方Skills,以便重复利用这些重复性判断。它们可用于包括Claude Code和Codex在内的兼容代理。Docker官方介绍
本文将根据2026年9月27日确认的官方文档和存储库,探讨所提供的功能、安装方法以及实际可请求的任务。核心问题很简单:“安装Docker Skills后,代理可以更具体地承担哪些工作?”

1. 代理共同阅读Docker任务标准
Dockerfile是描述如何创建容器镜像的文件。Compose处理应用程序、数据库、缓存等多个服务协同运行的配置。即使代理了解这两个文件的语法,它仍然需要单独判断每个项目适合哪种配置。
例如,为了减小Web应用程序镜像的大小,需要检查编译工具是否也需要在运行时环境中。如果添加数据库,不仅要确定连接地址,还要确定数据保存位置和启动条件。Skills提供了一种方式,将相关操作指南打包,供代理在需要时读取,而不是每次都在请求中冗长地描述这些条件。
在Agent Skills格式中,技能是一个包含SKILL.md的文件夹。此文件包含名称、适用场景的描述和操作指南。如果需要,还会附带执行脚本、详细参考文档和配置模板。因此,技能可以包含比一行短提示更广泛的操作资料。Agent Skills概述
代理将用户请求与技能描述进行比较,以检索相关指南。Docker官方文档也指出,用户可以用自然语言请求所需结果,而无需直接提及技能名称。但是,实际的发现、调用方式和支持功能会因所使用的客户端而异。Docker Skills工作方式

图1. 读取请求所需的指南并应用于任务的流程。根据Agent Skills规范和Docker Skills介绍官方文档重新构建。文件修改和验证是解释Docker开发任务的示例。
Agent Skills规范描述了一种逐步读取名称、描述、整体指南和附加资料的结构。它不是从一开始就包含所有参考文件,而是根据任务所需的深度读取资料。这也是为什么在移动技能文件夹时要保持整个文件夹,因为只复制SKILL.md可能会遗漏链接的模板或脚本。Agent Skills规范
在此结构中,Docker Skills指导判断和操作顺序。实际的文件更改和命令执行在代理的工具和权限范围内进行,而镜像构建和容器执行则由Docker环境负责。即使安装了技能,Docker执行环境和项目测试也需要单独准备。
2. 目前支持哪些操作?
截至确认时,官方目录中注册了11个技能。按产品划分如下。表中的名称是选择要安装的技能时使用的标识符。官方目录
对于一般的应用程序开发,从理解前三个技能开始是自然的。它们分别对应“首次配置”、“优化镜像构建”和“连接多个服务”。
首次容器化时:docker-project-foundations
此技能从没有Docker配置的项目开始。它主要指导同时创建.dockerignore、Dockerfile和compose.yaml。.dockerignore的作用是从发送给构建的文件中排除不必要的项。
它还建议将开发用数据库或缓存配置为Compose服务。这使得开发人员可以在项目配置中一起运行这些服务,而不是在主机上单独安装每个服务。它还包括本地开发端口和服务部署的标准。Project Foundations技能
例如,可以按如下方式请求。本文中的请求语句是使用示例,并非引用执行结果。
이 웹 애플리케이션을 로컬에서 Docker Compose로 실행할 수 있게 구성해 줘.
기존 실행 방법과 의존성을 먼저 확인하고,
Dockerfile, compose.yaml, .dockerignore의 변경안을 설명해 줘.
데이터베이스는 개발용으로 사용하며 데이터를 재시작 후에도 유지하고 싶어.
这里,期望的结果比“Dockerfile生成”更具体。它包括了其他开发人员下载项目后如何运行的工作范围。
优化现有镜像时:docker-build-strategies
此技能涵盖多阶段构建、缓存利用、构建目标文件和普通用户执行等。多阶段构建将需要构建工具的阶段与最终执行阶段分开,只将执行所需的产物移动到最终镜像中。Build Strategies技能、Docker多阶段构建文档
也可以考虑缓存有帮助的场景。如果只更改一行源代码,但每次都重新安装外部包,那么值得检查依赖安装阶段受哪些文件更改的影响。Docker解释了一个通过先复制和安装依赖定义文件,然后复制频繁更改的源代码来减少不必要的缓存失效的例子。Docker构建缓存优化
이 Dockerfile의 빌드 캐시와 최종 이미지 구성을 검토해 줘.
의존성 설치가 다시 실행되는 조건과 실행 이미지에 남는 파일을 설명하고,
동작을 유지하면서 바꿀 수 있는 부분을 제안해 줘.
수정 후에는 기존 테스트와 이미지 실행 확인 방법도 정리해 줘.
镜像大小或构建时间减少多少取决于项目和缓存状态。比较时,最好在相同的代码和执行条件下,将没有缓存的首次构建和只更改源代码的重新构建分开记录,这样更容易判断。这是确认引入效果的测量方法示例。
优化服务连接时:docker-compose-patterns
Compose技能涵盖服务间的依赖关系、健康检查、卷、网络以及开发配置分离。例如,在连接数据库的Web服务中,当调查“所有容器都已启动,但应用程序报告连接错误”的问题时,可以应用此技能。
此技能还包括用于检查配置的辅助脚本和检查资料。这些资料有助于代理不仅停留在文件生成阶段,还能继续进行结果验证过程。Compose Patterns技能
3. Compose示例:已启动与已就绪
考虑Web应用程序需要连接数据库的情况。数据库容器启动后,内部初始化可能仍在进行中。此时,如果Web服务尝试连接,可能会失败。
Compose的默认启动顺序和服务就绪状态是不同的条件。Docker官方文档解释了一种配置,即使用healthcheck检查就绪状态,并在依赖项中指定condition: service_healthy,以便在健康检查通过后才启动依赖服务。Compose启动顺序文档

图2. 容器启动与健康检查通过的差异。根据Docker Compose启动顺序官方文档重新构建。时间间隔用于概念说明,并非测量值。
可以向代理请求如下:
Compose로 서비스를 시작할 때 웹 애플리케이션이 가끔 DB 연결에 실패해.
compose.yaml의 의존성과 DB 준비 상태 검사를 확인해 줘.
원인을 설명한 뒤 필요한 healthcheck와 시작 조건을 제안하고,
현재 데이터 볼륨을 유지하면서 검증하는 방법을 알려 줘.
在此示例中,重要的产物是几行YAML以及随之解释的操作条件。要审查更改,必须了解通过何种检查判断数据库已就绪,以及检查失败如何影响Web服务的启动。
此外,此条件处理的是启动时的依赖关系。运行时连接中断后的重新连接或应用程序级别的错误处理是需要单独确认的项目。通过将技能指导的设置与应用程序需要处理的操作结合起来看,请求范围和验证范围将变得清晰。
4. 安装:首先选择所需的技能和适用范围
Docker提供了多种安装途径,包括针对不同代理的插件和扩展、可在多个客户端上安装的skills CLI以及手动复制等。这里我们首先探讨Claude Code和Codex均可使用的通用CLI方式。CLI指通过终端命令使用的工具。官方安装指南
以下命令是根据官方指南整理的安装示例。需要支持npx的Node.js/npm环境和受支持的编码代理。要实际执行Docker任务,还需要准备好与任务匹配的Docker·Compose环境。
首先,可以查看可安装的列表。
npx skills add docker/skills --list
在项目目录中执行以下命令,将进入选择要安装的技能和目标代理的流程。
npx skills add docker/skills
默认范围是当前项目。用户范围安装可以通过--global选项选择。项目范围适合区分在特定存储库中使用的配置,而用户范围则适合在多个项目中通用。了解同一技能安装在哪个范围,有助于后续查找更新目标。skills CLI的安装范围
也可以明确指定目标,例如将特定技能安装到Codex。以下是官方README中技能·代理选择选项的组合示例。
npx skills add docker/skills --skill docker-compose-patterns --agent codex
要选择Claude Code,只需更改目标选项。
npx skills add docker/skills --skill docker-compose-patterns --agent claude-code
支持的目标和选项可以根据安装时的CLI指南进行确认。也可以先查看完整列表,然后只添加所需的技能。Docker Skills README的安装示例、skills CLI的目标·技能选择选项
Claude Code还提供了客户端的插件路径。在Claude Code提示符中使用以下命令:
/plugin marketplace add docker/skills
/plugin install docker-skills@docker
在命令执行后打开插件详细界面的版本中,选择安装范围并确认完成状态。之后,禁用或删除可以在Claude Code的插件管理界面中进行。Claude Code插件管理文档
插件安装和CLI安装是独立的选项。如果组织已有管理的安装方式,则应遵循该方式。包括Codex在内的各客户端路径已在Docker的代理专用安装文档中进行了整理。
5. 区分安装确认与实际使用确认
在安装列表中看到名称与代理在相应任务中读取技能是不同的确认。在CLI方式中,可以通过以下命令查看安装列表:
npx skills list
然后,打开一个新的代理会话,并请求与技能匹配的任务,例如审查Dockerfile。要求代理同时告知使用的技能名称和读取的SKILL.md路径,有助于确认应用目标。如果客户端显示技能使用历史,则检查该记录;否则,可以将代理解释的指南与安装文件进行对照。如果未发现,则检查目标代理、项目·用户范围和搜索路径。Docker的安装验证流程
任务结果的验证还需要进一步的步骤。例如,如果更改了Compose配置,可以使用以下命令检查配置本身:
docker compose config --quiet
--quiet是一个选项,用于在不输出完整配置内容的情况下进行验证。如果此验证通过,则可以确认Compose解释的配置。实际的镜像构建、服务启动、数据库连接和业务功能的正常运行需要通过单独的执行和测试来确认。docker compose config文档
在记录审查结果时,最好将“已修改”和“已验证”与具体结果联系起来。这包括记录更改的文件、执行的检查、成功与否以及未能执行的确认项。这种方式即使在引入技能后,也能直接与团队的代码审查和测试流程相结合。
如果想撤销CLI安装,可以通过指定已安装的技能名称(例如npx skills remove docker-compose-patterns)来启动删除过程。如果安装在用户范围,则使用相应的范围选项。skills CLI的删除命令
6. 删除策略和更新也是操作指南的一部分
Docker任务除了文件创建外,还可能包括容器停止、镜像·缓存删除、数据卷清理。官方集合中单独有docker-destructive-guardrails来处理这些操作。它提供了影响说明和确认标准,并区分了满足条件的情况,例如有限的测试容器清理。删除·停止操作策略技能
Compose中的删除操作由Compose技能具体处理。例如,docker compose down -v可以删除项目管理的命名卷等,这需要与数据保留要求一并审查。像外部卷这样Compose不管理的对象,其适用范围不同。这些指南指导代理在执行任务时区分“重启”、“问题解决”和“数据删除”。Compose技能的删除命令说明
此策略是代理阅读的行为指南。实际的命令执行权限和批准设置由所使用的代理·执行环境决定。在引入官方技能时,同时应用团队的数据保留策略和操作权限,可以明确责任范围。
更新路径应与安装方式匹配。对于通过skills CLI安装的技能,可以使用以下命令:
npx skills update
如果安装在用户范围,则相应地应用--global。插件和扩展由各自的客户端管理,手动复制的文件夹不会自动更新。Docker存储库的main是反映更改的开发通道,为了重现已审查的配置,提供了选择和使用官方发布标签的方式。Docker Skills发布指南
如果团队引入此功能,可以记录安装方法、选择的技能、使用的标签或版本以及用于验证的代表项目。在迁移到下一个版本时,在同一项目中比较生成的文件和测试结果,可以更容易地确认更改的指南对团队工作的影响。这是操作版本化工作指南的方法示例。
7. 官方Skills发布的意义
Docker Skills是产品创建方以AI编码代理可用的形式分发操作指南的案例。开发人员请求所需结果,代理则通过参考项目文件和相关技能来提出或执行更改。由于指南在GitHub上管理,因此也可以查看参考了哪些规则。
在实际工作中,能够将反复说明的条件与具体的审查项联系起来是非常有用的。从“配置以首次运行”、“优化构建缓存”和“等待DB就绪状态”等范围明确的任务开始应用,结果也更容易验证。
判断效果的标准是任务结果,而不是安装的技能数量。可以检查生成的配置是否符合项目、是否通过验证流程以及是否减少了审查和修改的负担。Docker官方Skills提供了可用于启动此类工作的公开标准和资料。
官方存储库:docker/skills · 使用指南:Docker Skills · 安装指南:Install Docker Skills
发表回复