这个实战解决什么问题

大多数个人开发者的 VPS 运维日常是:SSH 上去,敲几条 docker pstail 日志、重启服务,完了退出来。事情不难,但它打断你——正在写代码时服务器出问题,切终端、连 SSH、查日志,一套下来二十分钟没了。

这个实战把 AgentDock 装进 VPS,让你在 ChatGPT 的对话窗口里完成同样的运维动作:AI 调用 AgentDock 的接口查状态、读日志、重启容器。你要做的是描述问题,它负责那一套「连上去敲命令」的动作。

部署结构

ChatGPT(你的对话入口)
    │ HTTPS(Cloudflare Tunnel)

AgentDock(跑在 VPS 上,端口 8765,工作区指向服务目录)

    ├── Docker daemon(容器管理)
    ├── nginx / 应用服务(进程巡检)
    └── 工作区(部署脚本、compose 文件、日志目录)

VPS 上的部署用 Docker 路线(安装教程里有完整命令),两个要点:

  1. 工作区最小化:只把 /opt/myapp(你的 compose 和脚本目录)和必要的日志目录设为工作区,系统目录一概不给
  2. Token + TunnelAGENTDOCK_TOKEN 用 64 位随机串,Cloudflare Tunnel 暴露 HTTPS 入口,防火墙不放行 8765 直连

安全细节全部在AgentDock 安全实践里展开过,这里只强调一句:公网可达的运维入口,认证和传输加密一行都不能省。

日常巡检:从手动到一句指令

部署完成后的第一次实测,我让 ChatGPT 做「早巡检」。指令是:

巡检一下服务器:看所有 Docker 容器状态、磁盘剩余空间、内存占用,有没有异常重启的容器。有异常告诉我原因,没问题就一句话总结。

它通过 AgentDock 依次执行了容器列表、磁盘检查、内存检查,然后给出一句话报告。全程我沒有碰过 SSH 客户端。

这个场景的关键价值不在省时间(手动跑也就两分钟),而在于它变成了一个可以随口发起的动作——早上打开 ChatGPT 顺手一句,不需要「切到运维心态」。

故障排查实战:一次真实的容器重启循环

下面是这套架构真正发挥价值的场景。某天早上巡检发现一个服务在重启循环,传统流程是我 SSH 上去一层层排查。这次我直接把现象丢给 ChatGPT:

xxx 容器在反复重启,帮我排查原因,给出修复建议,先别动手改。

它通过 AgentDock 做了这几步:

  1. 看容器状态——确认重启次数和退出码
  2. 读容器日志docker logs 等效操作)——发现启动阶段抛出数据库连接超时
  3. 读 compose 配置(工作区里的文件操作)——检查环境变量,发现数据库地址写的是内网域名,而数据库容器刚好在同一天被重建过
  4. 给出结论:数据库容器重建后 IP 变了,但服务配置用的是固定 IP 而不是服务名,建议改用 Docker 网络内的服务名解析

我确认方案后让它改配置、docker compose up -d 重建,服务恢复。整个过程八分钟,其中七分钟是 AI 在跑,我只做了最后拍板。

值得说明的是「先别动手改」这句话的作用:把诊断执行分开,AI 只读不写,你看完诊断再授权修复。这是 AI 运维的第一安全习惯——和安全实践篇里的最小权限原则一脉相承。

适合交给 AI 的运维动作清单

实测下来,这些动作交给 AI 的性价比最高:

动作频率为什么适合
每日巡检(容器/磁盘/内存/证书)每天模式固定,一句指令
日志排查随时AI 读日志比人快,grep 组合拳它熟
证书到期检查每月容易忘,AI 不会忘
备份验证每周重复性高,做完最好留档
部署发布按需配合工作区里的脚本,一句话发布
配置变更按需诊断与执行分离,人拍板

不适合交给 AI 的:核心数据库的结构变更、支付相关操作、任何没有备份预案的破坏性动作。这些保留人工,Auto-review 的习惯在哪里都适用。

把巡检固化下来

单次手动巡检跑顺后,两个升级路线:

路线一:Workflow 模板。 多设备用户可以把巡检流程做成 NexusDock 的 Workflow 模板,参数化目标主机,一键执行。

路线二:Recall 记忆沉淀。 每次排查完,让 AI 把「这台机器的脾气」(哪些服务容易出问题、上次故障的原因)写进记忆。三个月后,你的 AI 对这台 VPS 的了解会超过大多数初级运维。

应急场景速查表

故障发生时最容易犯的错是「先乱敲一通」。把高频应急场景固化成提示词,出事时复制粘贴:

现象第一句指令红线
磁盘告警「查磁盘占用最高的目录和最大的容器日志文件,先只报告」未确认前不让删任何文件
容器重启循环「xxx 容器反复重启,看退出码和最近日志,给诊断先不动手」诊断与执行分离
网站打不开「从 nginx 状态、容器状态、端口监听三步排查,每步输出结果」不让 AI 直接改配置
证书临期「检查 HTTPS 证书剩余天数,列出即将到期的域名」续期动作人工确认
CPU 飙高「找出占用最高的进程,看它最近日志,判断是不是业务高峰」不让 AI 直接 kill 进程

两个共性:指令里都带「先报告」,把读操作和写操作分开;红线一列提前写死,慌乱时刻 AI 最需要的恰恰是预先划定的边界。

顺带说清 SSH 的最终角色:它不是日常入口,而是兜底通道——AgentDock 自身挂掉、机器失联这类「工具的故障」,仍然走传统 SSH 处理。退役的是日常重复劳动,不是应急能力。

效果小结

指标之前(SSH 手动)之后(AgentDock + ChatGPT)
日常巡检发起成本切换心态,开终端连 SSH对话窗口随口一句
故障定位耗时15–40 分钟5–10 分钟(含 AI 读日志)
排查经验留存在脑子里,会忘沉淀进 Recall,可检索
运维入口数量SSH 客户端 + 面板 + 脚本一个对话窗口

VPS 运维是 AgentDock 最容易见效的场景——因为它高频、模式化、且人人都有。跑通这一个场景后,多设备编排里讲的「机器群资源池」对你来说就是自然延伸了。