Skip to content

NodePassProject/NodePassDash

Repository files navigation

NodePassDash

Version GitHub license

NodePassDash是一个现代化的 NodePass 管理界面,基于 Go 后端 + React + Vite、HeroUI 和 TypeScript 构建。提供实时隧道监控、流量统计和端点管理功能。

📋 2.x 升级到 3.x 迁移指南

version 3.x 是一个重大版本更新! 核心架构全面重构,从 Next.js 打包更换为 Vite 打包,后端重构为 GORM + Gin 架构。

升级步骤

  1. 导出主控数据

    • 在 2.x 版本的主控列表中,使用导出功能保存所有主控配置数据
  2. 更新 Docker 配置

    • 从仓库获取最新的 docker-compose.yml 配置文件
  3. 拉取最新镜像

    docker pull ghcr.io/nodepassproject/nodepassdash:latest
  4. 重启容器

    # 在容器所在的compose文件目录运行
    docker compose down && docker compose up -d
  5. 重新导入数据

    • 访问新版本界面,重新创建主控配置
    • 导入之前导出的主控数据
    • 验证所有功能正常工作

⚠️ 注意事项

此版本不向下兼容,升级前请务必备份/导出主控数据,建议全新创建主控避免旧数据的影响!

  • 数据库不兼容: 3.x 版本使用全新的数据库表结构,无法直接迁移 2.x 数据
  • 配置格式变更: 主控配置格式有所调整,建议手动重新配置重要隧道
  • 功能变化: 部分功能界面和操作方式有所变化,建议查看新版本文档

✨ 主要特性

  • 🚀 架构全新升级: 从 Next.js 迁移至 Vite,构建速度显著提升;后端升级至 GORM + Gin 架构
  • 🎯 实时监控升级: 通过 SSE 实时推送隧道状态、流量数据和日志信息
  • 📊 数据可视化增强: 支持多时间段切换(24h/12h/6h/1h)和图表放大查看
  • 🎨 个性化配置: 新增个性化配置按钮,支持隐私设置、新手模式等
  • 🎬 场景化创建: 参考 iOS 版本设计,提供场景化隧道创建体验
  • 🔍 网络诊断工具: 内置网络调试和诊断功能,方便问题排查
  • 📱 移动端APP联动: 增加适配移动端APP的二维码导入显示
  • 🐳 Docker 优化: 多阶段构建,支持多架构部署

📸 界面预览

截图0 截图1 截图2
截图3 截图4 截图5

📂 目录结构(简化)

├─ web/                 前端应用 (React + Vite + HeroUI)
│  ├─ src/              React 组件和页面
│  ├─ public/           静态资源 (logo, favicon 等)
│  └─ package.json      前端依赖和构建脚本
├─ internal/            Go 业务代码
├─ cmd/server/          Go 应用入口
├─ Dockerfile           多阶段容器构建
├─ build.sh             本地构建脚本
└─ .github/workflows/   CI/CD 自动化构建

⚡️ 快速开始

Deploy to NodePassDash 演示账号: nodepass / Np123456.

⚠️ 重要提醒:演示环境,请勿更改密码,请勿填写任何敏感信息

我们提供三种部署方式,请根据你的需求选择:

🐳 方式一:Docker 部署(推荐)

适合生产环境,开箱即用,自动处理依赖和环境配置。

📚 查看 Docker 完整部署文档 了解详细配置

📦 方式二:二进制部署

适合 VPS/服务器环境,性能最优,支持 systemd 服务管理。

📚 查看 二进制部署文档 了解详细配置

🛠️ 方式三:开发环境

适合开发者本地开发和调试。

📚 查看 开发环境文档 了解完整开发流程

🔧 命令行工具

NodePassDash v3.0.0 提供了命令行参数来管理和配置应用:

基本参数

# 指定端口启动(默认 3000)
./nodepassdash --port 8080
# 配置证书以启动https访问
./nodepassdash --cert /path/to/cert.pem --key /path/to/cert.key
# 启动时指定日志等级
./nodepassdash --log-level debug
# 显示帮助信息
./nodepassdash --help
# 显示版本信息
./nodepassdash --version
# 禁用用户名密码登录
./nodepassdash --disable-login

管理工具

# 重置管理员密码,注:重置后需要重启服务
./nodepassdash --resetpwd
# 系统会提示输入新的用户名和密码
# 数据库维护(检查和修复)
./nodepassdash --db-check
# 清理日志文件(保留最近30天)
./nodepassdash --clean-logs

Docker 环境下使用

# 在运行中的容器内重置密码,注:重置后需要重启容器
docker exec -it nodepassdash ./nodepassdash --resetpwd

# 使用自定义端口启动容器
docker run -d \
  --name nodepassdash \
  -p 8080:8080 \
  ghcr.io/nodepassproject/nodepassdash:latest \
  ./nodepassdash --port 8080

📄 许可证

本项目基于 BSD-3-Clause 许可证 开源。

⚖️ 免责声明

本项目以“现状”提供,开发者不提供任何明示或暗示的保证。用户使用风险自担,需遵守当地法律法规,仅限合法用途。开发者对任何直接、间接、偶然或后果性损害概不负责。进行二次开发须承诺合法使用并自负法律责任。开发者保留随时修改软件功能及本声明的权利。最终解释权归开发者所有。

📞 支持


⭐ 如果这个项目对你有帮助,请给我们一个 Star!

Star History Chart