Files
mining-client/README.md

105 lines
4.4 KiB
Markdown
Raw Permalink Normal View History

2025-11-26 11:39:20 +08:00
# 云算力平台卖方客户端
本程序为云算力平台卖方客户端用于将卖方身份与GPU主机绑定实现自动挖矿匹配功能。
## 功能特性
1. **身份绑定**将云算力平台上的卖方身份和GPU主机进行绑定
2. **GPU信息上报**自动获取并上报主机GPU详细参数GPU型号、显存容量等
3. **自动挖矿匹配**:自动匹配买方的挖矿需求,无需手动操作挖矿
## 系统要求
- Go 1.25.4 或更高版本
- Windows 或 Linux 操作系统
- 已配置好挖矿环境(显卡驱动、挖矿软件、执行权限等)
## 编译方法
2025-12-01 15:52:58 +08:00
在项目根目录下运行Windows / Linux 通用):
2025-11-26 11:39:20 +08:00
```bash
2025-12-01 15:52:58 +08:00
go build -o bin/client ./cmd
2025-11-26 11:39:20 +08:00
```
2025-12-01 15:52:58 +08:00
- Windows 下会生成 `bin/client.exe`
- Linux 下会生成 `bin/client`
2025-11-26 11:39:20 +08:00
## 使用方法
2025-12-01 15:52:58 +08:00
1. **身份文件(auth)**:确认 `bin` 目录下存在 `auth` 文件,该文件会在下载客户端时自动生成,请勿删除、修改、移动该文件
2025-11-26 11:39:20 +08:00
2025-12-01 15:52:58 +08:00
2. **运行客户端(需管理员/root 权限)**
- Windows: 以“管理员身份运行”命令行或终端,然后执行:
```bash
./client.exe
```
- Linux: 使用 root 或 sudo 启动:
```bash
sudo ./bin/client
```
2025-11-26 11:39:20 +08:00
3. 客户端将自动:
- 读取身份信息
2025-12-01 15:52:58 +08:00
- 进行权限自检(非 root / 非管理员会直接退出并给出提示)
- 获取主机 UUID作为机器码和 GPU 信息
2025-11-26 11:39:20 +08:00
- 连接到云算力平台服务器
2025-12-01 15:52:58 +08:00
- 进行 TCP 心跳保活和自动重连
- 自动检查远程版本并执行更新(需要配置远程更新服务)
2025-11-26 11:39:20 +08:00
- 等待并处理挖矿任务
## 重要注意事项
### 启动前准备
1. **挖矿环境配置**:确保客户端执行主机已配置好挖矿环境,包括:
- 显卡驱动已正确安装
- 挖矿软件已安装并配置
- 执行权限已设置
- 可以手动通过挖矿软件进行挖矿
### GPU 操作注意事项
#### 移除 GPU
- 如果要对本机GPU进行移除拔出GPU操作云算力平台会同步移除对应的GPU
- **重要**如果在相关GPU有租约且没有在平台申请故障处理的情况下直接移除GPU会导致产生罚没
- **建议**在有租约的情况下要移除故障GPU请第一时间前往平台申请故障处理在平台确认后再进行移除GPU的操作
#### 更换 GPU
- 如果要对本机GPU进行更换拔出后又新插入GPU操作云算力平台会重新读取GPU数据
- 如果更换型号相同,则会按原有配置上架
- 如果更换的型号不同,则需在更换后前往卖家中心手动调整上架配置
- **重要**如果在相关GPU有租约且没有在平台申请故障处理的情况下直接更换GPU可能会导致产生罚没
- **建议**在有租约的情况下要更换故障GPU请第一时间前往平台申请故障处理在平台确认后再进行更换GPU的操作
2025-12-01 15:52:58 +08:00
### 持续挖矿(可选)
-`bin/mining.linux.conf``bin/mining.windows.conf` 中配置 `[sustain]` 段,可以在**没有租约时自动挖矿**。
- 当有租约任务下发时,客户端会自动停止持续挖矿,执行租约任务;租约结束后会自动恢复持续挖矿。
2025-11-26 11:39:20 +08:00
## 项目结构
```
cloud-client/
├── bin/ # 编译输出目录
2025-12-01 15:52:58 +08:00
│ ├── auth # 身份认证文件(需手动创建)
│ ├── mining.linux.conf # Linux 挖矿配置(含持续挖矿配置)
│ └── mining.windows.conf # Windows 挖矿配置(含持续挖矿配置)
2025-11-26 11:39:20 +08:00
├── cmd/ # 主程序目录
│ ├── main.go # 程序入口
│ ├── windows.bat # Windows 编译脚本
│ └── linux.sh # Linux 编译脚本
├── internal/ # 内部包
│ ├── client.go # 客户端主逻辑
│ ├── msg/ # 消息处理
│ ├── src/ # 系统相关实现
2025-12-01 15:52:58 +08:00
│ │ ├── linux/ # Linux 系统实现GPU、挖矿进程管理、权限检测等
│ │ └── windows/ # Windows 系统实现GPU、挖矿进程管理、权限检测等
│ ├── sustain/ # 持续挖矿管理
│ ├── updater/ # 自动更新模块
│ └── utils/ # 工具函数文件读写、UUID 等)
2025-11-26 11:39:20 +08:00
├── go.mod # Go 模块定义
└── README.md # 本文件
2025-12-01 15:52:58 +08:00
```