Compose项目太多?一个面板全收编,AI帮你排障
前言
说到Docker的运维面板,大家最熟悉的应该还是Portainer,功能全、用的人多,属于第一梯队,不过Portainer更多是围绕容器本身做管理,再加上它本身是没有中文版的,只有社区维护的第三方中文版,但更新和官方是没有同一版本的所以导致想用的人也很苦恼。

前两天逛L站看到个叫ComposeOps的项目在Docker管理上做得就比较垂直,它直接以Compose项目为单位做纳管,把配置编辑、实时日志、数据卷备份、资源监控这些运维里的高频动作都收进了网页里,另外还带一个AI运维Agent。

项目作者StanlySGY,MIT协议开源,定位很明确,就是给个人服务器用的,熊猫的极空间上常驻容器虽然不多,也就五六个,但每次测试新容器都是用的极空间,项目一旦多了之后compose文件散在各处,正好拿来试。
项目部署
该项目的部署并不难,官方在Docker Hub提供了现成的镜像:stanly1997/opsdash,极空间可以直接用Docker里的compose堆栈功能,把官方的compose.yml贴进去就能跑,
compose内容如下,镜像拉取慢的照例还是走docker.1ms.run的加速源:
services:
opsdash:
image: stanly1997/opsdash:${COMPOSEOPS_VERSION:-1.5.1}
container_name: opsdash
restart: unless-stopped
init: true
ports:
- "28765:3001"
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- opsdash-data:/app/backend/data
environment:
SERVE_FRONTEND: "1"
PORT: "3001"
HOST: "0.0.0.0"
LOG_LEVEL: info
ENABLE_SHELL: "1"
security_opt:
- no-new-privileges:true
healthcheck:
test: ["CMD", "curl", "-fsS", "http://127.0.0.1:3001/health"]
interval: 30s
timeout: 5s
retries: 3
start_period: 10s
volumes:
opsdash-data:
其中有几个地方需要注意,首先是docker.sock必须要挂载,面板依靠它去发现和管理容器,端口官方默认是28765,映射路径以及端口根据自身NAS情况更改,不冲突即可。另外如果只想本机访问,可以把端口写成127.0.0.1:28765:3001,对外暴露的方式后面会单独说。

部署好之后浏览器输入http://NAS的IP:28765就可以访问了,首次进入需要设置管理员密码,密码建议用强密码,因为面板权限很高。
熊猫提醒:还有一个
SETUP_TOKEN的环境变量,如果在compose里配置了它,首次设置需要携带这个令牌,作用是防止初始化页面被其他人抢先注册管理员,没配置的话可以忽略。
项目体验
进入面板后它会自动扫描宿主机上的Compose项目,在总览能看到我们的项目总数、容器总数、CPU的占用以及内存占用情况,最近的事件信息也在这个位置。

扫描出来的项目默认是只读状态,想要让面板接管某个项目,需要手动进行纳管授权,个人觉得这个设计挺好的,多一道确认就少一次手滑,手动纳管在设置的纳管纳管中去添加。

compose的YAML可以直接在网页里修改,语法会实时校验,并且每次保存都会自动保留一份快照,也支持查看diff以及一键回滚,也就是说改坏了随时能退回去,对经常动配置的用户非常友好。

监控和日志也是齐的,容器级别的CPU、内存以及网络曲线保留了7天历史,阈值支持自定义,超过之后可以推送通知,Bark、Telegram、钉钉、飞书这些都支持。日志是实时流,可以按ERROR和WARN过滤,排查问题方便不少。

其余像GitOps、应用市场、.env文件族编辑、Web Shell这些属于进阶模块,这次没有逐一体验,感兴趣的可以自行研究文档。
AI运维
项目最有意思的还是它的AI运维Agent。

AI的配置在设置里,走OpenAI兼容渠道,填Base URL、API Key以及模型名即可,支持配置多个渠道做故障切换,熊猫这里用的Minimax的大模型。

Agent内置了50个运维工具和4个组合宏,日常最直接的场景就是容器异常的时候把它丢给它,它会自己去拉日志、看配置,最后给出结论,遇到高危操作会先停下来向你确认,整个过程都有审计记录。
它还内置了一个MCP Server,独立Token,默认只读白名单,高危工具不会对外暴露,也就是说Claude、Cursor这类客户端可以直接调用它的运维工具,熊猫简单测试了下连通性没有问题,日常是否用得上另说,但开放程度确实给得比较足。
写在最后
散落在各台NAS上的compose项目终于有地方统一管了,配置敢改、备份也敢删,AI排障属于加分项,守护模式对懒得天天盯日志的用户刚刚好。
项目地址:StanlySGY/ComposeOps ,觉得不错的话可以给作者点个Star,也算是对开源的支持。

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~
