1
0
Fork 0
1Panel-Appstore/apps/bestsub/README.md

161 lines
5.2 KiB
Markdown
Raw Permalink Normal View History

2025-09-02 18:46:48 +08:00
# BestSub
BestSub 是一个高性能的节点检测,订阅转换服务,基于 Go 语言开发。该项目提供了完整的 Web 界面和 API 接口,支持多种检测项目,多种订阅格式转换,为用户提供便捷的订阅管理解决方案。
## ✨ 主要特性
- 🎨 **现代的 WebUI**: 提供现代化的 Web 管理界面,完善的 API 文档,方便用户自定义开发
-**高性能**: 并发处理,低 CPU 占用,低内存消耗,优化的资源利用率
- 🌍 **多架构**: 支持多种系统架构和操作系统,广泛的兼容性
- 🗂️ **节点池**: 可持久化保存历史节点,智能淘汰质量低下的节点,确保最佳体验
- 🔄 **内置 Subconverter**: 支持各种订阅格式的输入输出转换
- 🔧 **扩展**: 模块化设计,支持 PR 扩展新功能,仅需创建单个文件即可添加新的通知、保存或检测方式
- 📢 **通知**: 支持多样化的通知方式和自定义通知模板,满足不同场景的消息推送需求
- 💾 **保存**: 支持多样化的数据保存方式,灵活的数据持久化选择
- 🔍 **检测**: 支持多样化的节点检测方式,全面的质量评估体系
## 🚀 快速开始
### 方式一:直接运行
1. 从 [Releases](https://github.com/bestruirui/BestSub/releases/latest) 页面下载适合您系统架构的可执行文件
2. 直接运行程序,系统将自动:
- 创建必要的配置文件
- 下载 WebUI
- 下载 Subconverter
### 方式二Docker
```bash
docker run -d \
--name bestsub \
--restart unless-stopped \
-v /path/to/data:/app/data \
-p 8080:8080 \
ghcr.io/bestruirui/bestsub
```
**参数说明:**
- `--name bestsub`: 设置容器名称
- `--restart unless-stopped`: 容器自动重启策略
- `-v /path/to/data:/app/data`: 数据持久化挂载(请将 `/path/to/data` 替换为您的实际路径)
- `-p 8080:8080`: 端口映射,访问地址为 `http://localhost:8080`
### 方式三Docker Compose
创建 `docker-compose.yml` 文件:
```yaml
services:
bestsub:
image: ghcr.io/bestruirui/bestsub:latest
container_name: bestsub
restart: unless-stopped
ports:
- "8080:8080"
volumes:
- ./data:/app/data
```
启动服务:
```bash
docker-compose up -d
```
## 📁 目录结构
程序运行后将创建以下目录结构:
```
bestsub/
├── config.json # 主配置文件
├── data/ # 数据目录
│ └── bestsub.db # SQLite 数据库文件
├── log/ # 日志文件目录
├── session/ # 会话数据目录
│ └── bestsub.session # 会话文件
├── subconverter/ # 订阅转换器目录
│ ├── base/ # 转换规则基础配置
│ │ └── base/
│ │ └── all_base.tpl
│ ├── pref.yml # 转换器配置文件
│ └── subconverter # 转换器可执行文件
└── ui/ # Web 界面文件
├── index.html # 主页面
└── ... # 其他静态资源
```
## 🛠️ 手动部署
当自动下载失败时,请按以下步骤手动部署:
1. **下载 WebUI 组件**
- 访问 [BestSubOrg/Front](https://github.com/BestSubOrg/Front/releases/latest)
- 下载最新版本并解压到 `ui` 目录
2. **下载 Subconverter 组件**
- 访问 [BestSubOrg/subconverter](https://github.com/BestSubOrg/subconverter/releases/latest)
- 下载对应系统架构的版本并解压到 `subconverter` 目录
3. **验证部署**
- 确保目录结构与上述 [目录结构](#-目录结构) 章节一致
- 重新启动程序
## 🔗 版本历史
### 当前版本 (v1.x)
- 全新的 Web 界面
- 增强的性能和稳定性
- 完整的容器化支持
### 经典版本 (v0.3.5)
- **命令行界面版本**
- **[📖 查看文档](https://github.com/bestruirui/BestSub/blob/legacy/doc/README_zh.md)**
- **[⬇️ 下载应用](https://github.com/bestruirui/BestSub/releases/tag/v0.3.5)**
## 🤝 贡献指南
我们欢迎任何形式的贡献!
### 项目图标
- **格式要求**: SVG 格式
- **用途**: 项目 Logo 和品牌标识
- **提交方式**: 创建 Issue 或 Pull Request
### 更多功能
- 新的节点检测项目
- 新的储存渠道
- 新的通知渠道
### 其他贡献方式
- 🐛 报告 Bug
- 💡 提出新功能建议
- 📝 改进文档
- 🧪 编写测试用例
## ⚠️ 免责声明
本项目仅供学习和研究使用。使用本软件时,请您:
- ✅ 遵守当地法律法规和相关政策
- ✅ 尊重网络服务提供商的使用条款
- ✅ 承担使用本软件可能产生的一切后果和责任
- ⚠️ 理解作者不对使用本软件造成的任何损失承担责任
**请在合法合规的前提下使用本软件。如果您不同意上述条款,请勿使用本软件。**
## ❤️ 支持项目
如果这个项目对您有帮助,请考虑:
- ⭐ 给项目点个 Star
- 🍴 Fork 项目并参与开发
- 📢 向朋友推荐本项目
- 💬 在社区中分享使用体验
## 📊 项目统计
![Repobeats analytics image](https://repobeats.axiom.co/api/embed/dfefb13ae0ed117da68382c0ed63695992826039.svg "Repobeats analytics image")