PassNAT LogoPassNAT

远程唤醒设备管理工具 UpSnap 自建部署,支持定时任务与网络发现

作者

小编

发布时间

Curving abstract shapes with an orange and blue gradient

项目介绍

UpSnap 是一个简洁高效的远程唤醒管理工具,使用 SvelteKit、Go 和 PocketBase 构建而成。它提供了一个直观的网页仪表板,让你可以轻松地通过网络唤醒协议(WOL)远程启动本地网络中的设备。

无论你是想远程唤醒 NAS、服务器还是其他设备,UpSnap 都能满足你的需求。它支持设备自动发现、定时任务、端口监测等多项实用功能,配置简单,开箱即用。项目采用自建架构,数据完全掌握在自己手中,安全可靠。

点我跳转

核心特性:

🚀 一键唤醒仪表板 - 快速启动网络中的任何设备

⏰ 定时任务自动化 - 支持 Cron 表达式设置计划任务

🔌 端口监测 - 实时检测设备状态

🔍 网络设备发现 - 自动扫描并识别本地网络设备

👤 用户权限管理 - 为不同用户分配差异化权限

🎨 35+ 主题切换 - 满足个性化审美需求

🌐 多语言支持 - 覆盖全球主流语言

🐳 多平台 Docker 镜像 - 支持 amd64、arm64、arm/v7、arm/v6 架构

🏠 完全自建 - 隐私安全有保障

部署安装

如果你需要在外网也能访问 UpSnap,建议配置内网穿透服务。推荐使用 帕斯内网穿透 来实现远程访问,先注册账号备用。具体的配置步骤可以查看 内网穿透全平台使用指南

使用 Docker 快速部署

打开你的 NAS 设备或其他支持 Docker 的系统。

第一步:添加镜像

进入容器管理界面,点击本地镜像 - 添加镜像 - 从 URL 添加。

镜像地址填写:`ghcr.io/seriousm4x/upsnap:5`(也可使用 Docker Hub 的镜像:`seriousm4x/upsnap:5`

等待镜像下载完成。

第二步:启动容器

点击启动按钮启动容器。

第三步:配置容器参数

勾选开机自动启动,然后进行以下配置:

端口映射设置

将容器内的 `8090` 端口映射到主机。如果你的主机上 8090 端口已被占用,可以修改映射的主机端口(例如改为 5000),但容器内的端口需要保持为 8090。

存储配置

创建一个本地文件夹用于存储应用数据(建议命名为 `data`),然后将其挂载到容器内的 `/app/pb_data` 路径。这样可以确保你的设备配置和数据在容器重启后不会丢失。

环境变量配置

以下是 UpSnap 支持的环境变量设置:

必须设置的环境变量:

可选的环境变量:


TZ:设置容器时区(例如 `Europe/Berlin`),用于 Cron 任务的时间计算

UPSNAP_INTERVAL:设备 Ping 检测的时间间隔,默认 `*/10 * * * * *`(每 10 秒检测一次)

UPSNAP_SCAN_RANGE:本地网络扫描范围(例如 `192.168.1.0/24`),用于自动发现设备

UPSNAP_SCAN_TIMEOUT:网络扫描超时时间,默认 `500ms`

UPSNAP_PING_PRIVILEGED:是否使用特权模式进行 Ping 操作,默认 `true`(如果容器非 root 运行则设为 `false`

UPSNAP_WEBSITE_TITLE:自定义网站标题

如果你不需要特殊配置,可以直接跳过环境变量设置,使用默认配置启动。

第四步:完成部署

所有配置完成后,点击启动。容器启动成功后,在浏览器中访问 `http://你的NAS地址:8090`(如果修改了端口映射,请使用对应的端口)即可打开 UpSnap 管理界面。

首次访问时,系统会引导你创建管理员账户。创建完成后,你就可以开始添加要管理的设备了。

部署完成!

现在你已经成功部署了 UpSnap。你可以在仪表板上添加网络中的设备,设置定时唤醒任务,或者让系统自动发现并管理你的设备。享受远程设备管理的便利吧!