Initialize Clash Web source and deployment documentation

This commit is contained in:
lhc committed 2026-10-05 17:32:00 +08:00
commit 8e0fa00a73
66 files changed
+8532

No files matched your search

+58
View File
@@ -0,0 +1,58 @@
# Clash Web
通过浏览器管理 Clash/Mihomo 订阅、代理节点、分流规则、连接、日志和外网连通性测试。使用 Vue 3、Go 和 SQLite,Mihomo 作为独立代理内核运行,服务部署在 Linux VM 上。
## 开发
需要 Go 1.24+、Node.js 22.12+ 或 24+、npm 和 Python 3。从项目根目录执行:
```bash
make build
make assets
./bin/clashweb --mihomo ./bin/mihomo --init
./bin/mihomo -d ./data/mihomo -f ./data/mihomo/config.yaml
```
在另一终端启动管理服务:
```bash
./bin/clashweb --mihomo ./bin/mihomo
```
打开 `http://127.0.0.1:8080`,用启动日志中的首次设置令牌创建管理员密码。开发环境保持 TUN 关闭。
依赖和内核已准备时,可直接复用,无需重复执行安装、下载命令。前端热更新、测试和配置说明见 [开发文档](docs/development.md)。
## 部署
在开发机生成 Linux amd64 部署包:
```bash
python3 scripts/package.py
```
完整包 `clashweb-linux-amd64.tar.gz` 用于首次部署,`clashweb-update-linux-amd64.tar.gz` 用于升级管理程序;两者均带 SHA-256 校验文件。目标 VM 无需安装 Go、Node.js 或 npm。
安装服务、TUN 网关和客户端接入见 [部署文档](docs/deployment.md),程序、内核与规则升级见 [升级文档](docs/upgrading.md)。网络准备及 systemd 安装脚本在目标 VM 上运行。
## 文档
- [API](docs/api.md)
- [开发与测试](docs/development.md)
- [部署与恢复](docs/deployment.md)
- [升级与回退](docs/upgrading.md)
- [第三方组件](docs/third-party.md)
## 项目结构
```text
cmd/clashweb/ Go 服务入口
internal/app/ 认证、SQLite、订阅及 Mihomo 控制
web/src/ Vue 页面、组件和状态管理
web/e2e/ 浏览器测试
scripts/ 构建资源、部署、诊断与打包工具
deploy/ systemd 服务定义
docs/ API、开发和运维文档
```
仓库仅包含源码、锁文件、测试与部署资料。本机数据库、配置密钥、内核二进制、规则文件、依赖目录、构建输出、测试缓存和部署包不提交到 Git。