- 已安装Docker 20.10+
- 已安装Docker Compose 2.0+
- 已克隆项目到本地
- 已进入项目目录
- 已复制
.env.example为.env - 已设置数据库密码(DB_PASSWORD)
- 已设置管理员密码(ADMIN_PASSWORD)
- (可选)已配置ZPAY支付系统
- 执行
docker-compose up -d启动服务 - 等待所有服务启动完成(约30秒)
- 检查服务状态:
docker-compose ps
- 访问首页:http://localhost:8080/client/
- 访问管理后台:http://localhost:8080/admin/login.html
- 测试登录:admin / admin123
- 检查API健康:http://localhost:5000/health
# 克隆项目
git clone https://github.com/Wcowin/OneClip-License-Manager.git
cd OneClip-License-Manager
# 运行一键部署脚本
chmod +x deploy.sh
./deploy.sh或者直接从GitHub下载并运行:
# 下载部署脚本
curl -O https://raw.githubusercontent.com/Wcowin/OneClip-License-Manager/refs/heads/main/deploy.sh
chmod +x deploy.sh
./deploy.sh脚本会自动:
- 检查Docker和Docker Compose环境
- 交互式配置环境变量
- 构建并启动服务
- 验证部署状态
git clone https://github.com/Wcowin/OneClip-License-Manager.git
cd OneClip-License-Manager# 复制环境变量配置
cp .env.example .env
# 编辑.env文件,设置必要的环境变量
nano .env必须配置:
DB_PASSWORD=your_secure_password_here # 数据库密码
ADMIN_PASSWORD=your_admin_password_here # 管理员密码可选配置(启用ZPAY真实支付):
ZPAY_PID=your_zpay_pid_here
ZPAY_KEY=your_zpay_key_here
ZPAY_API_URL=https://zpayz.cn/
ZPAY_NOTIFY_URL=https://yourdomain.com/api/payment/notify
ZPAY_RETURN_URL=https://yourdomain.com/client/complete_order.html# 启动所有服务
docker-compose up -d
# 查看服务状态
docker-compose ps
# 查看日志
docker-compose logs -f# 检查API健康状态
curl http://localhost:5000/health
# 应该返回:
# {"status":"healthy","timestamp":"..."}- 首页: http://localhost:8080/client/
- 管理后台: http://localhost:8080/admin/login.html
- API接口: http://localhost:5000
默认管理员账号:admin / admin123
# 启动服务
docker-compose up -d
# 停止服务
docker-compose down
# 重启服务
docker-compose restart
# 查看日志
docker-compose logs -f api
docker-compose logs -f mysql# 进入MySQL容器
docker-compose exec mysql bash
# 备份数据库
docker-compose exec mysql mysqldump -u root -p${DB_ROOT_PASSWORD} license_db > backup.sql
# 恢复数据库
docker-compose exec -T mysql mysql -u root -p${DB_ROOT_PASSWORD} license_db < backup.sql# 查看容器日志
docker-compose logs api
# 重新构建镜像
docker-compose build --no-cache
# 重启容器
docker-compose restart api编辑 docker-compose.yml,修改端口映射:
ports:
- "80:80" # Web服务
- "443:443" # HTTPS
- "5000:5000" # API服务编辑 nginx.conf,配置域名和SSL证书:
server {
listen 80;
server_name yourdomain.com;
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl;
server_name yourdomain.com;
ssl_certificate /path/to/cert.pem;
ssl_certificate_key /path/to/key.pem;
location / {
proxy_pass http://localhost:8080;
}
}# 只开放必要端口
sudo ufw allow 22/tcp # SSH
sudo ufw allow 80/tcp # HTTP
sudo ufw allow 443/tcp # HTTPS
sudo ufw enable创建定时任务:
# 编辑crontab
crontab -e
# 每天凌晨2点备份
0 2 * * * /path/to/backup.sh-
数据库优化
- 添加索引
- 使用连接池
- 定期清理历史数据
-
应用优化
- 启用缓存
- 优化查询
- 使用CDN
-
修改默认密码
- 数据库密码
- 管理员密码
- Session密钥
-
启用HTTPS
- 配置SSL证书
- 强制HTTPS访问
-
限制访问
- 配置防火墙
- 使用IP白名单
- 限制API访问频率
-
日志监控
- 配置日志轮转
- 监控错误日志
- 设置告警通知
-
服务监控
- 监控服务状态
- 监控资源使用
- 设置自动重启
# 查看容器日志
docker-compose logs api
# 检查端口占用
netstat -tlnp | grep 8080
# 重新构建镜像
docker-compose build --no-cache# 检查MySQL容器状态
docker-compose ps mysql
# 查看MySQL日志
docker-compose logs mysql
# 测试数据库连接
docker-compose exec mysql mysql -u license_user -p# 检查ZPAY配置
docker-compose exec api env | grep ZPAY
# 查看支付日志
docker-compose logs api | grep payment
# 测试支付API
curl -X POST http://localhost:5000/api/payment/create \
-H "Content-Type: application/json" \
-d '{"plan":"monthly","email":"test@example.com"}'如果遇到问题,请查看:
或联系技术支持:vip@oneclip.cloud
- 8080 - Web服务
- 5000 - API服务
- 3306 - MySQL数据库
- 管理员:admin / admin123
.env- 环境变量docker-compose.yml- Docker配置Dockerfile- 镜像构建
- 容器日志:
docker-compose logs - 应用日志:容器内
/app/logs/
- 备份命令:
docker-compose exec mysql mysqldump ... - 恢复命令:
docker-compose exec -T mysql mysql ...