|
2 | 2 | <img src="docs/nodepassdash-logo.svg" alt="NodePassDash" height="80"> |
3 | 3 | </div> |
4 | 4 |
|
5 | | - |
6 | | - |
7 | | - |
8 | | -NodePassDash是一个现代化的 NodePass 管理界面,基于 Go 后端 + React + Vite、HeroUI 和 TypeScript 构建。提供实时隧道监控、流量统计和端点管理功能。 |
9 | | - |
10 | | -> ## 📋 2.x 升级到 3.x 迁移指南 |
11 | | -> **version 3.x 是一个重大版本更新!** 核心架构全面重构,从 Next.js 打包更换为 Vite 打包,后端重构为 GORM + Gin 架构。 |
12 | | -> |
13 | | -> ### 升级步骤 |
14 | | -> |
15 | | -> 1. **导出主控数据** |
16 | | -> |
17 | | -> - 在 2.x 版本的主控列表中,使用导出功能保存所有主控配置数据 |
18 | | -> |
19 | | -> 2. **更新 Docker 配置** |
20 | | -> |
21 | | -> - 从仓库获取最新的 `docker-compose.yml` 配置文件 |
22 | | -> |
23 | | -> 3. **拉取最新镜像** |
24 | | -> |
25 | | -> ```bash |
26 | | -> docker pull ghcr.io/nodepassproject/nodepassdash:latest |
27 | | -> ``` |
28 | | -> |
29 | | -> 4. **重启容器** |
30 | | -> |
31 | | -> ```bash |
32 | | -> # 在容器所在的compose文件目录运行 |
33 | | -> docker compose down && docker compose up -d |
34 | | -> ``` |
35 | | -> |
36 | | -> 5. **重新导入数据** |
37 | | -> |
38 | | -> - 访问新版本界面,重新创建主控配置 |
39 | | -> - 导入之前导出的主控数据 |
40 | | -> - 验证所有功能正常工作 |
41 | | -> |
42 | | -> ### ⚠️ 注意事项 |
43 | | -> ***此版本不向下兼容,升级前请务必备份/导出主控数据,建议全新创建主控避免旧数据的影响!*** |
44 | | -> - **数据库不兼容**: 3.x 版本使用全新的数据库表结构,无法直接迁移 2.x 数据 |
45 | | -> - **配置格式变更**: 主控配置格式有所调整,建议手动重新配置重要隧道 |
46 | | -> - **功能变化**: 部分功能界面和操作方式有所变化,建议查看新版本文档 |
47 | | -
|
48 | | -## ✨ 主要特性 |
49 | | -
|
50 | | -- 🚀 **架构全新升级**: 从 Next.js 迁移至 Vite,构建速度显著提升;后端升级至 GORM + Gin 架构 |
51 | | -- 🎯 **实时监控升级**: 通过 SSE 实时推送隧道状态、流量数据和日志信息 |
52 | | -- 📊 **数据可视化增强**: 支持多时间段切换(24h/12h/6h/1h)和图表放大查看 |
53 | | -- 🎨 **个性化配置**: 新增个性化配置按钮,支持隐私设置、新手模式等 |
54 | | -- 🎬 **场景化创建**: 参考 iOS 版本设计,提供场景化隧道创建体验 |
55 | | -- 🔍 **网络诊断工具**: 内置网络调试和诊断功能,方便问题排查 |
56 | | -- 📱 **移动端APP联动**: 增加适配移动端APP的二维码导入显示 |
57 | | -- 🐳 **Docker 优化**: 多阶段构建,支持多架构部署 |
58 | | -
|
59 | | -## 📸 界面预览 |
60 | | -
|
61 | | -| | | | |
62 | | -|---|---|---| |
63 | | -|  |  |  | |
64 | | -|  |  |  | |
65 | | -
|
66 | | -## 📂 目录结构(简化) |
67 | | -```text |
68 | | -├─ web/ 前端应用 (React + Vite + HeroUI) |
69 | | -│ ├─ src/ React 组件和页面 |
70 | | -│ ├─ public/ 静态资源 (logo, favicon 等) |
71 | | -│ └─ package.json 前端依赖和构建脚本 |
72 | | -├─ internal/ Go 业务代码 |
73 | | -├─ cmd/server/ Go 应用入口 |
74 | | -├─ Dockerfile 多阶段容器构建 |
75 | | -├─ build.sh 本地构建脚本 |
76 | | -└─ .github/workflows/ CI/CD 自动化构建 |
77 | | -``` |
| 5 | +**Language:** English | [简体中文](docs/zh-CN/README.md) |
78 | 6 |
|
79 | | -## ⚡️ 快速开始 |
80 | | - |
81 | | -<div style="display: flex; align-items: center; gap: 12px;"> |
82 | | - <a href="https://dash.nodepass.eu/"> |
83 | | - <img src="https://img.shields.io/badge/点击体验_Demo-000?style=for-the-badge&logo=heroui&logoColor=white&labelColor=000" alt="Deploy to NodePassDash"> |
84 | | - </a> |
85 | | - <span><strong>演示账号:</strong> <code>nodepass</code> / <code>Np123456.</code></span> |
86 | | -</div> |
| 7 | + |
| 8 | + |
87 | 9 |
|
88 | | -> ⚠️ **重要提醒:演示环境,请勿更改密码,请勿填写任何敏感信息** |
| 10 | +NodePassDash is a modern web dashboard for managing **NodePass** endpoints, tunnels, and services. It ships as a single Go binary (Gin + GORM + SQLite) with an embedded React (Vite + TypeScript + HeroUI) frontend, and provides real-time telemetry via SSE/WebSocket. |
89 | 11 |
|
90 | | -我们提供三种部署方式,请根据你的需求选择: |
| 12 | +## Demo |
91 | 13 |
|
92 | | -### 🐳 方式一:Docker 部署(推荐) |
| 14 | +- Live demo: https://dash.nodepass.eu/ |
| 15 | +- Demo account: `nodepass` / `Np123456.` |
93 | 16 |
|
94 | | -> 适合生产环境,开箱即用,自动处理依赖和环境配置。 |
| 17 | +> Important: demo environment — do not change the password and do not submit any sensitive information. |
95 | 18 |
|
96 | | -📚 查看 [Docker 完整部署文档](docs/DOCKER.md) 了解详细配置 |
| 19 | +## Highlights |
97 | 20 |
|
98 | | -### 📦 方式二:二进制部署 |
| 21 | +- **Modern, clean dashboard**: responsive UI built with React + Vite + TypeScript + HeroUI. |
| 22 | +- **Real-time monitoring**: SSE/WebSocket updates for tunnel status, traffic, and logs. |
| 23 | +- **Multi-dimensional charts**: traffic trends (hour/day/week) with detailed drill-down views. |
| 24 | +- **Powerful NodePass management**: endpoints, tunnels, and services in one place (including batch actions & sorting). |
| 25 | +- **Scenario-based creation**: guided wizards/templates to create common setups faster and safer. |
| 26 | +- **OAuth2 login support**: configure providers (e.g. GitHub / Cloudflare) and optionally disable password login. |
| 27 | +- **i18n**: built-in multilingual UI support. |
| 28 | +- **Personalization**: privacy mode, theme/language onboarding, and configurable experience. |
| 29 | +- **Operational tooling**: file-log viewer, network debugging utilities, and endpoint system stats charts. |
| 30 | +- **Mobile-friendly workflows**: QR code output for importing into the mobile app. |
| 31 | +- **Safer at scale**: search/filter/sort, grouping, tagging, and batch operations for day-to-day maintenance. |
| 32 | +- **Release awareness**: built-in version visibility and update notifications to help you stay current. |
| 33 | +- **Portable architecture**: embedded frontend + single-service runtime, easy to run as a container or a systemd service. |
99 | 34 |
|
100 | | -> 适合 VPS/服务器环境,性能最优,支持 systemd 服务管理。 |
| 35 | +## Screenshots |
101 | 36 |
|
102 | | -📚 查看 [二进制部署文档](docs/BINARY.md) 了解详细配置 |
| 37 | +| | | | |
| 38 | +|-----------------------------------------------------------|-------------------------------------------------------------|---------------------------------------------------------------| |
| 39 | +|  |  |  | |
| 40 | +|  |  |  | |
| 41 | +|  |  |  | |
103 | 42 |
|
104 | | -### 🛠️ 方式三:开发环境 |
105 | 43 |
|
106 | | -> 适合开发者本地开发和调试。 |
| 44 | +## Quick Start |
107 | 45 |
|
108 | | -📚 查看 [开发环境文档](docs/DEVELOPMENT.md) 了解完整开发流程 |
| 46 | +- **Docker (recommended):** `docs/en/DOCKER.md` |
| 47 | +- **Binary + systemd:** `docs/en/BINARY.md` |
| 48 | +- **Development:** `docs/en/DEVELOPMENT.md` |
109 | 49 |
|
110 | | -## 🔧 命令行工具 |
| 50 | +## Documentation |
111 | 51 |
|
112 | | -NodePassDash v3.0.0 提供了命令行参数来管理和配置应用: |
| 52 | +- **Migration Guide:** [docs/en/MIGRATION.md](docs/en/MIGRATION.md) |
| 53 | +- **Docker Guide:** [docs/en/DOCKER.md](docs/en/DOCKER.md) |
| 54 | +- **Binary Guide:** [docs/en/BINARY.md](docs/en/BINARY.md) |
| 55 | +- **Development Guide:** [docs/en/DEVELOPMENT.md](docs/en/DEVELOPMENT.md) |
113 | 56 |
|
114 | | -### 基本参数 |
| 57 | +## CLI Flags |
115 | 58 |
|
116 | 59 | ```bash |
117 | | -# 指定端口启动(默认 3000) |
118 | | -./nodepassdash --port 8080 |
119 | | -# 配置证书以启动https访问 |
120 | | -./nodepassdash --cert /path/to/cert.pem --key /path/to/cert.key |
121 | | -# 启动时指定日志等级 |
122 | | -./nodepassdash --log-level debug |
123 | | -# 显示帮助信息 |
124 | 60 | ./nodepassdash --help |
125 | | -# 显示版本信息 |
126 | 61 | ./nodepassdash --version |
127 | | -# 禁用用户名密码登录 |
| 62 | +./nodepassdash --port 8080 |
| 63 | +./nodepassdash --log-level INFO |
| 64 | +./nodepassdash --cert /path/to/cert.pem --key /path/to/key.pem |
128 | 65 | ./nodepassdash --disable-login |
129 | | -``` |
130 | | - |
131 | | -### 管理工具 |
132 | | - |
133 | | -```bash |
134 | | -# 重置管理员密码,注:重置后需要重启服务 |
| 66 | +./nodepassdash --sse-debug-log |
135 | 67 | ./nodepassdash --resetpwd |
136 | | -# 系统会提示输入新的用户名和密码 |
137 | | -# 数据库维护(检查和修复) |
138 | | -./nodepassdash --db-check |
139 | | -# 清理日志文件(保留最近30天) |
140 | | -./nodepassdash --clean-logs |
141 | 68 | ``` |
142 | 69 |
|
143 | | -### Docker 环境下使用 |
| 70 | +## License |
144 | 71 |
|
145 | | -```bash |
146 | | -# 在运行中的容器内重置密码,注:重置后需要重启容器 |
147 | | -docker exec -it nodepassdash ./nodepassdash --resetpwd |
148 | | - |
149 | | -# 使用自定义端口启动容器 |
150 | | -docker run -d \ |
151 | | - --name nodepassdash \ |
152 | | - -p 8080:8080 \ |
153 | | - ghcr.io/nodepassproject/nodepassdash:latest \ |
154 | | - ./nodepassdash --port 8080 |
155 | | -``` |
| 72 | +BSD-3-Clause. See `LICENSE`. |
156 | 73 |
|
157 | | -## 📄 许可证 |
| 74 | +## Disclaimer |
158 | 75 |
|
159 | | -本项目基于 [BSD-3-Clause 许可证](LICENSE) 开源。 |
| 76 | +This project is provided “as is”, without any express or implied warranties. You are responsible for complying with local laws and regulations and using it only for lawful purposes. The authors are not liable for any direct, indirect, incidental, or consequential damages. The authors reserve the right to modify features and this statement at any time. |
160 | 77 |
|
161 | | -## ⚖️ 免责声明 |
| 78 | +## Support |
162 | 79 |
|
163 | | -本项目以“现状”提供,开发者不提供任何明示或暗示的保证。用户使用风险自担,需遵守当地法律法规,仅限合法用途。开发者对任何直接、间接、偶然或后果性损害概不负责。进行二次开发须承诺合法使用并自负法律责任。开发者保留随时修改软件功能及本声明的权利。最终解释权归开发者所有。 |
| 80 | +- Issues: https://github.com/NodePassProject/NodePassDash/issues |
| 81 | +- Telegram: https://t.me/NodePassGroup |
| 82 | +- Telegram Channel: https://t.me/NodePassChannel |
164 | 83 |
|
165 | | -## 📞 支持 |
166 | | - |
167 | | -- 🐛 问题报告: [GitHub Issues](https://github.com/NodePassProject/NodePassDash/issues) |
168 | | -- 💬 社区讨论: [Telegram 群组](https://t.me/NodePassGroup) |
169 | | -- 📢 频道: [Telegram 频道](https://t.me/NodePassChannel) |
170 | | - |
171 | | -## 🤝 Sponsors |
| 84 | +## Sponsors |
172 | 85 |
|
173 | 86 | <table> |
174 | 87 | <tr> |
175 | 88 | <td width="240" align="center"> |
176 | | - <a href="https://vps.town"><img src="https://cdn.yobc.de/assets/vpstown.png"></a> |
| 89 | + <a href="https://vps.town"><img src="https://camo.githubusercontent.com/9ec623bd5609749c17a6d806b09d9d67d4e0b436d4893b369f7bc0d9f5158081/68747470733a2f2f6e6f6465706173732e65752f6173736574732f767073746f776e2e706e67"></a> |
177 | 90 | </td> |
178 | 91 | </tr> |
179 | 92 | </table> |
180 | 93 |
|
181 | | ---- |
182 | | - |
183 | | -⭐ 如果这个项目对你有帮助,请给我们一个 Star! |
| 94 | +## Stargazers |
184 | 95 |
|
185 | 96 | [](https://star-history.com/#NodePassProject/NodePassDash&Date) |
186 | | - |
0 commit comments