受够阿里云自带终端后,我用 Cursor + grill-me 做了个运维面板

开源地址先放门口,免得你滑到底才看见:
https://gitcode.com/z996262114/server_desktop


起因:不是我想卷,是云终端先惹的我

管一台阿里云服务器,日常无非这几件事:

改个配置、看一眼日志、重启某个服务、瞅瞅磁盘是不是又快满了。

按理说云控制台自带 Web 终端就能干。
现实是:卡、别扭、复制粘贴难受,用久了只想关网页。

SSH + vim 当然稳,但人不是命令行仙人——路径记混、服务名记错、来回敲 cd / systemctl,一天下来也挺累。

更烦的还有这些「小坑」:

  • 文件一多,像进迷宫
  • Celery、爬虫这类 没监听端口 的进程,到底在不在跑,得反复确认
  • 对外明明是 http://ip/bjh/ 这种路径,不是单纯的 :端口
  • 偶尔还想知道:内存紧不紧、哪个盘快爆、业务目录里到底是视频多还是压缩包多

于是我想了个很朴素的目标:

能不能在浏览器里,像用电脑桌面一样管这台服务器?


一个插曲:先被 grill-me“拷问”了一轮

我没有上来就闷头敲代码。

当时我刚好想试试 Cursor 里一个叫 grill-me 的 skill。这个 skill 不直接写代码,而是像面试官一样追问需求边界——你丢一个模糊想法进去,它能把问题问到“你终于知道自己到底要什么”为止。

我丢了一句:“我想在浏览器里管服务器,能看文件、能管服务、能看资源。”

然后它开始追问了:

第一轮:你到底想管什么?

  • “只管这一台,还是多台?”
  • “要 SSH 连过去,还是直接在机器上跑 Web?”
  • “访问是 IP 直接打,还是走域名反代?”

第二轮:你烦的到底是什么?

  • “文件乱,是不知道怎么找,还是编辑器不好用?”
  • “服务记混,是记不住名字,还是不知道哪些在跑?”
  • “监控是想看报警,还是只想知道有没有满?”

第三轮:你想要什么样的界面?

  • “一页还是多 tab?”
  • “编辑器内嵌还是浮窗?”
  • “终端常驻还是点开弹窗?”

被追问完之后,我发现自己真正烦的其实不是“没有面板”,而是:云终端里看不到“无端口服务”和“nginx 反代站点”——这两个东西我只能靠记忆和手动查,没有任何可视化展示。

于是需求变成了一个很具体的版本:

“我要一个能看到所有正在运行的服务(包括没端口的)、能识别 nginx 反代路径、文件编辑器要顺手、终端点开就能用的本机面板。”

如果没被追问,我可能只会写一个平平无奇的通用面板。

这个“拷问”的过程本身,让我觉得很有意思——所以顺手记下来了。后面你看到的几个核心功能,基本都是这个过程中“长”出来的。


亮点速览

这三个能力,是我在云厂商终端里根本没法顺手做的事:

亮点 解决什么问题
无端口服务发现 Celery、爬虫 worker 不占端口但还在跑,全量发现,无所遁形
nginx 站点拆卡片 /bjh//robot/ 不再是 nginx 一团乱麻,每个反代路径独立成卡片
终端用 script 分配伪终端 避开 node-pty 编译地狱,降低部署门槛

下面不讲技术细节,只讲人话版功能。


装上之后,你能干什么

① 一眼看懂机器还健不健康

登录后顶部直接告诉你:
在这里插入图片描述

  • 几核、内存多大、磁盘多大、跑了多久
  • 内存/磁盘可视化环形图
  • 业务目录里:代码/图片/视频/压缩包……谁在吃空间

适合回答:「服务器是不是快爆了?」这种灵魂拷问。

② 像资源管理器一样管文件

在这里插入图片描述

  • 逛目录、新建、下载、删除
  • 拖入上传(文件 / 文件夹都能拖)
  • Ctrl + C / X / V 复制剪切粘贴
  • 双击文本 → 浮窗编辑(VS Code 同款 Monaco),Ctrl + S 保存
    在这里插入图片描述

改配置、改脚本,大概率不用再和 vim 搏斗。

③ 管服务:启停重启,还能限内存、限带宽

在这里插入图片描述

  • 运行中/未运行分开展示,还能搜索筛选
  • 一键启动、停止、重启
  • 可设内存上限,可设出口带宽档位
  • 没端口但仍在跑 的 worker 也能看见
  • Nginx 反代出来的站点(比如 /bjh/)拆成独立卡片,点开就能访问

④ 浏览器里直接开终端

在这里插入图片描述

顶栏点「终端」,浮窗就是本机 shell。
临时看日志、跑两行命令够用。

⑤ 登录有点防呆

验证码、限速、失败锁定;面板里还能改账号密码。

提醒一句:这面板能干的事很多,弱密码 + 公网裸奔 = 把钥匙挂门口,别这样。


界面就一页,心智很简单

上:机器状态(内存 / 磁盘 / 文件类型)
左:文件系统(拖拽、编辑、复制粘贴)
右:服务中心(启停、限速、站点卡片)
顶:终端 / 账户 / 退出

大部分时候,不用再打开云厂商那个难用的 Web 终端


怎么装(人话版)

环境要求

  • Linux 服务器(Alibaba Cloud Linux 上跑通)
  • Node.js 22+(系统自带 20 的话单独装一下就行)
  • systemd

一键推送(开发机 Windows)

git clone https://gitcode.com/z996262114/sever_desktop.git
cd sever_desktop
powershell -ExecutionPolicy Bypass -File deploy\push.ps1

脚本会打包、上传、远端构建并重启,默认端口 3344

服务器上手动安装

cd /opt/zcy/sever_desktop   # 或你的目录
export PATH="/opt/node22/bin:$PATH"
PORT=3344 bash deploy/install.sh

首次部署后,管理员随机密码会写在 /root/.ops-console-admin-pass
进面板后第一时间点右上角「账户」改掉。

打开浏览器

http://你的公网 IP:3344

适合谁

  • 个人或小团队的 单机 Linux 服务器
  • 博客、爬虫、游戏服、小项目……都行
  • 想少 SSH、少骂云终端的人

不适合:多机集群统一管控、要企业级复杂权限的场景。
它的定位很诚实——一台机的干活面板,不是宇宙中心。


开源地址(再贴一次)

仓库 https://gitcode.com/z996262114/sever_desktop
克隆 git clone https://gitcode.com/z996262114/sever_desktop.git

欢迎 Star,也欢迎来提「还有啥烦」。
如果它帮你少开两次云终端,那这篇文章就值了。

如果正在犹豫要不要试 Grill-me:找个你真想解决的问题丢给它,看它能追问出什么——反正我当时只是想测试一下,结果多了一个每天都在用的工具。

https://gitcode.com/z996262114/sever_desktop


写在最后

这是一个「因为云终端难用,被逼出来」的小工具。功能不追求大而全,但把日常最烦的几件事串在一页里——文件、服务、反代站点、资源、终端。

开发路径也很直白:Cursor + grill-me 把需求问透 → Express/React/Monaco/xterm + systemd/tc 落地 → push 脚本推到真机验收。上面已经把怎么装、怎么用、适合谁都写清楚了;如果你也受够了阿里云自带终端,又懒得天天纯 SSH,希望这篇能帮上忙。


标签运维 Node.js systemd 开源 Linux React Cursor 服务器管理 nginx grill-me


本文首发于 CSDN,作者 [忘路之远近i],转载请注明出处。
仓库地址:https://gitcode.com/z996262114/sever_desktop
``

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐