局域网唤醒工具UpSnap
什么是 UpSnap ?
UpSnap
是使用SvelteKit
、Go
、PocketBase
和nmap
编写的简单局域网唤醒应用程序。
v3
更新日志:
- ⚙️ 后端:
- 用
Go
重写。之前的版本是Python
写的; - 不再支持不同的数据库。后端现在使用基于
SQLite
的PocketBase
; - 添加了使用密码唤醒事件的选项。如果您的网卡支持,您可以在
BIOS
中找到它,称为SecureOn
或smiliar
; PocketBase
提供了一个API
。可以登录localhost:8090/_/
,点击右上角的API reviewP·
- 用
- 🎨 前端:
- 从
Svelte
转换为SvelteKit
,并且几乎重写了所有内容; - 摆脱了模式。页面应该更加用户友好;
- 设备卡上更好的徽章以显示
cron
事件和密码保护;
- 从
- 通用:
- 大大减少资源需求;
- 单个二进制文件即可运行所有内容
- 反向代理不再需要自定义路由;
安装
在群晖上以 Docker 方式安装。
镜像下载
官方的镜像发布在 ghcr.io
,
地址:https://github.com/seriousm4x/UpSnap/pkgs/container/upsnap
用 SSH
客户端登录到群晖后,依次执行下面的命令
1 | # 新建文件夹 upsnap 和子目录 |
如果没有科学上网,很可能会拉不动,可以试试 docker
代理网站:https://dockerproxy.com/,但是会多几个步骤
1 | # 如果拉不动的话加个代理 |
下载完成后,可以在 映像
中找到
命令行安装
如果你熟悉命令行,可能用 docker cli
更快捷
1 | # 新建文件夹 upsnap 和 子目录 |
也可以用 docker-compose
安装,将下面的内容保存为 docker-compose.yml
文件
这是完整的官方版本
1 | version: "3" |
然后执行下面的命令
1 | # 新建文件夹 upsnap 和 子目录 |
运行
在浏览器中输入 http://群晖IP:8090
就能看到主界面
添加设备
进设置里添加设备
添加完成之后,回到首页会出现设备卡片
点①可以直接网络唤醒
唤醒之后,开关按钮会变绿
点②则显示该设备的详细信息
尝试再添加个端口,比如 SSH
使用的22
设备卡片上会增加
网络扫描
如果觉得一台一台添加麻烦,也可以直接用网络扫描
速度还是比较快的,但存在缺漏
点设备后面的 Add +
,返回首页
API
PocketBase
提供了 API
,浏览器中打开 http://群晖IP:8090/_/
注册账号之后,进入主界面
右上角 API Preview
日志
最后来一张官网的图
参考文档
seriousm4x/UpSnap: A simple wake on lan app written with SvelteKit, Go, PocketBase and nmap
地址:https://github.com/seriousm4x/UpSnapUpSnap v3 is out and rewritten in Go : selfhosted
地址:https://www.reddit.com/r/selfhosted/comments/10rz7jc/upsnap_v3_is_out_and_rewritten_in_go/