部署指南
本指南基于 netdisk-fast-download 项目的部署文档。
环境要求
- Java: JDK 17 或更高版本 (提供 JDK 11 分支 main-jdk11)
- Maven: 用于构建项目
- 内存: 至少 512MB RAM
- 存储: 至少 1GB 可用磁盘空间
服务端口
- 6400: API 服务端口(建议使用 Nginx 代理)
- 6401: 内置 Web 解析工具(个人使用可直接开放此端口)
JDK 下载
推荐使用阿里 Dragonwell JDK 17:
开发和打包
bash
# 环境要求: JDK 17 + Maven
git clone https://github.com/qaiu/netdisk-fast-download.git
cd netdisk-fast-download
mvn clean
mvn package -DskipTests打包好的文件位于 web-service/target/netdisk-fast-download-bin.zip
快速部署
Docker 部署
海外服务器部署
bash
# 创建目录
mkdir -p netdisk-fast-download
cd netdisk-fast-download
# 拉取镜像
docker pull ghcr.io/qaiu/netdisk-fast-download:latest
# 复制配置文件(或下载仓库 web-service/src/main/resources)
docker create --name netdisk-fast-download ghcr.io/qaiu/netdisk-fast-download:latest
docker cp netdisk-fast-download:/app/resources ./resources
docker rm netdisk-fast-download
# 启动容器
docker run -d -it --name netdisk-fast-download \
-p 6401:6401 \
--restart unless-stopped \
-e TZ=Asia/Shanghai \
-v ./resources:/app/resources \
-v ./db:/app/db \
-v ./logs:/app/logs \
ghcr.io/qaiu/netdisk-fast-download:latest
# 反代6401端口
# 升级容器
docker run --rm \
-v /var/run/docker.sock:/var/run/docker.sock \
containrrr/watchtower --cleanup --run-once netdisk-fast-download国内服务器部署
bash
# 创建目录
mkdir -p netdisk-fast-download
cd netdisk-fast-download
# 拉取镜像(使用国内镜像源)
docker pull ghcr.nju.edu.cn/qaiu/netdisk-fast-download:latest
# 复制配置文件(或下载仓库 web-service/src/main/resources)
docker create --name netdisk-fast-download ghcr.nju.edu.cn/qaiu/netdisk-fast-download:latest
docker cp netdisk-fast-download:/app/resources ./resources
docker rm netdisk-fast-download
# 启动容器
docker run -d -it --name netdisk-fast-download \
-p 6401:6401 \
--restart unless-stopped \
-e TZ=Asia/Shanghai \
-v ./resources:/app/resources \
-v ./db:/app/db \
-v ./logs:/app/logs \
ghcr.nju.edu.cn/qaiu/netdisk-fast-download:latest
# 反代6401端口
# 升级容器
docker run --rm \
-v /var/run/docker.sock:/var/run/docker.sock \
containrrr/watchtower --cleanup --run-once netdisk-fast-downloadDocker 容器管理
bash
# 查看容器状态
docker ps
# 查看日志
docker logs netdisk-fast-download
# 停止容器
docker stop netdisk-fast-download
# 启动容器
docker start netdisk-fast-download
# 重启容器
docker restart netdisk-fast-downloadLinux 系统服务部署
自动部署脚本
bash
cd ~
wget -O netdisk-fast-download.zip \
https://github.com/qaiu/netdisk-fast-download/releases/download/v0.1.9b7/netdisk-fast-download-bin.zip
unzip netdisk-fast-download-bin.zip
cd netdisk-fast-download
bash service-install.sh注意
netdisk-fast-download.service 中的 ExecStart 的路径需改为实际路径
服务管理命令
bash
# 查看服务状态
systemctl status netdisk-fast-download.service
# 启动服务
systemctl start netdisk-fast-download.service
# 重启服务
systemctl restart netdisk-fast-download.service
# 停止服务
systemctl stop netdisk-fast-download.service
# 开机自启
systemctl enable netdisk-fast-download.service
# 停止开机自启
systemctl disable netdisk-fast-download.serviceWindows 部署
系统服务部署
- 下载并解压 releases 版本
netdisk-fast-download-bin.zip - 进入
netdisk-fast-download下的bin目录 - 使用管理员权限运行
nfd-service-install.bat
直接运行
如果不想使用系统服务,可以直接运行 run.bat
注意
如果 JDK 环境变量的 Java 版本不是 17,请修改 nfd-service-template.xml 中的 Java 命令路径为实际路径。
宝塔面板部署
详细的宝塔部署教程请参考: 宝塔部署教程
基本步骤
- 安装 Java 环境
- 上传项目文件到服务器
- 在宝塔面板中配置端口访问
- 创建守护进程
- 配置反向代理
配置文件说明
目录结构
resources/
├── app-dev.yml # 服务配置
├── server-proxy.yml # 代理服务配置
└── ... # 其他配置文件主要配置文件
app-dev.yml
主要服务配置,包括:
- 服务端口
- 域名设置
- 缓存配置
- 代理设置
server-proxy.yml
代理服务配置,包括:
- 前端反向代理端口
- 路径配置
- SSL 配置
IP 代理配置
当解析量很大,IP 容易被封时,可以配置代理服务器。
修改 app-dev.yml:
yaml
proxy:
- panTypes: pgd,pdb,pod # 网盘标识
type: http # 支持 http/socks4/socks5
host: 127.0.0.1 # 代理IP
port: 7890 # 端口
username: # 用户名
password: # 密码nfd-proxy 搭建 http 代理服务器参考: nfd-proxy
认证信息配置
部分网盘(如123)解析大文件时需要登录认证,可以在配置文件中添加认证信息。
修改 app-dev.yml:
yaml
### 解析认证相关
auths:
# 123:配置用户名密码
ye:
username: 你的用户名
password: 你的密码注意
目前仅支持 123(ye)的认证配置。夸克/UC 等网盘的认证通过 auth 参数传递,参考 认证参数文档。
Nginx 反向代理
基本配置
nginx
server {
listen 80;
server_name your_domain.com;
location / {
proxy_pass http://127.0.0.1:6400;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}HTTPS 配置
nginx
server {
listen 443 ssl http2;
server_name your_domain.com;
ssl_certificate /path/to/cert.pem;
ssl_certificate_key /path/to/cert.key;
location / {
proxy_pass http://127.0.0.1:6400;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}性能优化
JVM 参数优化
bash
# 对于 2GB 内存的服务器
java -Xms512m -Xmx1024m -jar app.jar
# 对于 4GB 内存的服务器
java -Xms1024m -Xmx2048m -jar app.jar监控和日志
日志文件
日志文件通常位于 logs/ 目录下。
健康检查
bash
# 检查服务状态
curl http://localhost:6400/v2/statisticsInfo故障排除
端口被占用
bash
# 查看端口占用
netstat -tulpn | grep 6400内存不足
调整 JVM 参数或减少缓存配置。
权限问题
bash
chmod +x run.sh专属版
专属版提供以下额外功能:
- 小飞机、蓝奏优享大文件解析支持
- 天翼云盘、移动云盘、联通云盘解析支持
- 功能定制开发
- 托管服务:包含部署服务和云服务器环境
联系方式
- QQ: 197575894
- 微信: imcoding_
