核心用法
@elvatis_com/openclaw-docker 是面向 OpenClaw 生态的 Docker 容器管理插件,提供双模式连接能力:本地 Unix Socket(默认 /var/run/docker.sock)或远程 TCP(支持 TLS 加密)。用户可通过自然语言指令执行容器生命周期操作(启动/停止/重启)、日志与状态查询,以及 Docker Compose 项目的编排(up/down)。配置项 allowedOperations 与 readOnly 开关实现细粒度权限控制,timeoutMs 防止命令阻塞。
显著优点
1. 双重安全隔离:readOnly 模式仅开放只读工具(ps/logs/inspect),结合 allowedOperations 白名单,最小化误操作风险。
2. 远程管理友好:原生支持 TLS 加密通信,便于管理分布式节点或云端 Docker daemon。
3. Compose 原生集成:直接调用系统 docker compose CLI,兼容现有项目结构,无需额外学习成本。
4. 超时熔断机制:命令级 timeoutMs 防止僵尸进程拖垮系统。
潜在缺点与局限性
- 权限依赖过重:插件需访问 Docker Socket 或远程 daemon,宿主机 Docker 权限即 root 权限,一旦配置泄露后果严重。
- TLS 配置繁琐:远程场景需手动管理 CA/证书/密钥路径,证书轮换与过期监控增加运维负担。
- Compose 路径风险:
composeProjects目录配置不当可能导致插件在非预期路径执行命令,存在目录遍历隐患。 - 功能边界受限:仅封装常见操作,复杂场景(如网络/卷管理、Swarm 模式)需回归原生 CLI。
适合人群
- 需要 AI 辅助管理容器化基础设施的 DevOps/SRE 工程师
- 远程维护边缘节点或轻量服务器的系统管理员
- 在受控环境中希望通过自然语言快速查看容器状态的开发者
常规风险
| 风险场景 | 说明 |
|---------|------|
| Socket 暴露 | 若将 Socket 挂载至不可信环境,攻击者可轻易逃逸至宿主机 |
| TLS 密钥泄露 | PEM 文件权限配置宽松时,远程 daemon 遭未授权访问 |
| 配置漂移 | `allowedOperations` 被意外放宽,导致生产容器被误停 |
| 命令注入 | `composeProjects` 路径若含特殊字符,可能被利用执行任意命令 |