Files
vue-driven-cloud-storage/INSTALL_GUIDE.md
WanWanYun 2f44b98a53 新功能: 一键更新功能 v1.2.0
新增功能:
- 添加一键更新命令(--update 参数)
- 交互式菜单新增「更新/升级」选项
- 支持三种更新方式(curl/wget/本地脚本)

更新流程:
- 智能备份数据库和用户文件到临时目录
- 停止服务并拉取最新代码
- 保留重要文件(data/storage/.env)
- 自动更新后端依赖(npm install)
- 重启服务并进行健康检查
- 显示更新后的版本信息

安全保障:
- 更新前需用户确认
- 自动备份所有用户数据
- 保留配置文件和Nginx配置
- 更新失败时提供清晰的错误提示

文档更新:
- 一键部署命令.txt: 添加更新命令和v1.2.0说明
- INSTALL_GUIDE.md: 详细的更新指南和注意事项

版本: v1.2.0

🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-11 00:57:34 +08:00

296 lines
7.5 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 玩玩云 - 一键部署指南
## 🚀 一键安装命令
在您的服务器上执行以下任意一条命令即可开始安装:
### 方式1: 使用 curl
```bash
curl -fsSL https://gitee.com/yu-yon/vue-driven-cloud-storage/raw/master/install.sh | bash
```
### 方式2: 使用 wget
```bash
wget -qO- https://gitee.com/yu-yon/vue-driven-cloud-storage/raw/master/install.sh | bash
```
---
## 🔄 一键更新命令
如果您已经部署了玩玩云,可以使用以下命令快速更新到最新版本:
### 方式1: 使用 curl (推荐)
```bash
curl -fsSL https://gitee.com/yu-yon/vue-driven-cloud-storage/raw/master/install.sh | bash -s -- --update
```
### 方式2: 使用 wget
```bash
wget -qO- https://gitee.com/yu-yon/vue-driven-cloud-storage/raw/master/install.sh | bash -s -- --update
```
### 方式3: 本地脚本
```bash
wget https://gitee.com/yu-yon/vue-driven-cloud-storage/raw/master/install.sh
bash install.sh --update
```
### 更新说明
更新过程会:
- ✅ 从Gitee拉取最新代码
- ✅ 自动备份数据库和用户文件
- ✅ 更新后端依赖npm install
- ✅ 重启后端服务
- ✅ 保留所有配置和用户数据
更新不会影响:
- ✅ 数据库文件(用户、分享链接等)
- ✅ 用户上传的文件storage目录
- ✅ 配置文件(.env
- ✅ Nginx配置
---
## 📋 系统要求
### 支持的操作系统
- Ubuntu 18.04 / 20.04 / 22.04
- Debian 10 / 11 / 12
- CentOS 7 / 8
- RHEL 7 / 8
### 硬件要求
- **CPU**: 1核心及以上
- **内存**: 最低512MB推荐1GB+
- **磁盘**: 最低2GB可用空间推荐5GB+
- **网络**: 需要能访问外网(下载依赖包)
### 端口要求
- **80**: HTTP访问必须
- **443**: HTTPS访问可选如果使用SSL
- **40001**: 后端服务端口(内部使用)
---
## 🎯 部署流程
执行安装命令后,脚本会自动引导您完成以下步骤:
### 1⃣ 环境检测
自动检测系统信息:
- 操作系统类型和版本
- CPU架构
- 内存和磁盘空间
- 网络连接状态
- 公网IP地址
### 2⃣ 选择软件源
```
请选择软件包安装源:
[1] 官方源 (国外服务器推荐)
[2] 阿里云镜像源 (国内服务器推荐,速度更快)
```
**建议**: 国内服务器选择 [2],国外服务器选择 [1]
### 3⃣ 自动安装依赖
脚本会自动安装以下环境(如果未安装):
- Node.js 18.x
- Nginx
- PM2
- SQLite3
- 其他必要工具
### 4⃣ 选择访问模式
#### 域名模式 (推荐)
```
请选择访问模式:
[1] 域名模式 (推荐支持HTTPS)
[2] IP模式 (仅HTTP适合测试)
```
**如果选择 [1] 域名模式**:
1. 输入您的域名(例如: wwy.example.com
2. 脚本会自动验证域名解析
3. 选择SSL证书部署方式
#### SSL证书方案
```
请选择SSL证书自动部署方式:
【推荐方案】
[1] Certbot (Let's Encrypt官方工具)
- 最稳定可靠,支持自动续期
【备选方案】
[2] acme.sh + Let's Encrypt
- 纯Shell脚本更轻量级
[3] acme.sh + ZeroSSL
- Let's Encrypt的免费替代品
[4] acme.sh + Buypass
- 挪威免费CA有效期180天
【云服务商证书】
[5] 阿里云免费证书 (需提供AccessKey)
[6] 腾讯云免费证书 (需提供SecretKey)
【其他选项】
[7] 使用已有证书 (手动上传证书文件)
[8] 暂不配置HTTPS (可后续配置)
```
**建议**:
- 首选 [1] Certbot
- 如果失败,脚本会自动建议尝试 [2] 或 [3]
- 测试环境可选 [8] 跳过HTTPS
### 5⃣ 配置管理员账号
```
管理员用户名 [默认: admin]:
管理员密码至少6位:
确认密码:
```
### 6⃣ 自动部署
脚本会自动完成:
- ✅ 创建项目目录
- ✅ 从Gitee下载项目代码
- ✅ 安装后端依赖npm install
- ✅ 创建配置文件和数据库
- ✅ 部署SSL证书如果选择
- ✅ 配置Nginx反向代理
- ✅ 启动后端服务PM2管理
- ✅ 健康检查
### 7⃣ 部署完成
```
╔═══════════════════════════════════════════════════════════════╗
║ ║
║ 🎉 部署成功! ║
║ ║
╚═══════════════════════════════════════════════════════════════╝
访问地址: https://wwy.example.com
管理员账号: admin
管理员密码: ********
常用命令:
查看服务状态: pm2 status
查看日志: pm2 logs wanwanyun-backend
重启服务: pm2 restart wanwanyun-backend
停止服务: pm2 stop wanwanyun-backend
```
---
## 🔧 常见问题
### 1. 如何查看部署日志?
```bash
pm2 logs wanwanyun-backend
```
### 2. 如何重启服务?
```bash
pm2 restart wanwanyun-backend
```
### 3. 如何修改配置?
编辑配置文件后重启服务:
```bash
nano /var/www/wanwanyun/backend/.env
pm2 restart wanwanyun-backend
```
### 4. SSL证书过期怎么办
- **Certbot**: 自动续期,无需手动操作
- **acme.sh**: 自动续期,无需手动操作
- **手动证书**: 需要手动更新证书文件并重启Nginx
### 5. 忘记管理员密码怎么办?
修改配置文件并重启:
```bash
nano /var/www/wanwanyun/backend/.env
# 修改 ADMIN_PASSWORD 的值
pm2 restart wanwanyun-backend
```
### 6. 如何卸载?
使用一键卸载命令:
```bash
# 方式1: 在线卸载
curl -fsSL https://gitee.com/yu-yon/vue-driven-cloud-storage/raw/master/install.sh | bash -s -- --uninstall
# 方式2: 在线卸载
wget -qO- https://gitee.com/yu-yon/vue-driven-cloud-storage/raw/master/install.sh | bash -s -- --uninstall
# 方式3: 本地卸载(如果已下载脚本)
bash install.sh --uninstall
```
**卸载特性**:
- 双重确认机制,防止误删
- 可选数据备份到 `/root/wanwanyun-backup-YYYYMMDD-HHMMSS`
- 完整清理:
- PM2 进程: wanwanyun-backend
- 项目目录: /var/www/wanwanyun
- Nginx 配置: /etc/nginx/sites-enabled/wanwanyun.conf
- SSL 证书: /etc/nginx/ssl/*
- 临时文件和缓存
- 保留系统环境:
- Node.js
- Nginx
- PM2
- 编译工具build-essential、gcc-c++等)
- 智能残留检查
**手动卸载**(仅作参考,推荐使用自动卸载):
```bash
# 停止服务
pm2 delete wanwanyun-backend
# 删除项目目录
rm -rf /var/www/wanwanyun
# 删除Nginx配置
rm -f /etc/nginx/sites-enabled/wanwanyun.conf
systemctl reload nginx
```
### 7. 端口被占用怎么办?
检查端口占用:
```bash
netstat -tunlp | grep :80
netstat -tunlp | grep :40001
```
停止占用端口的进程或修改配置文件端口。
### 8. 域名解析未生效怎么办?
- 等待DNS解析生效通常需要几分钟到几小时
- 暂时选择 [8] 跳过HTTPS配置
- 解析生效后可手动配置SSL
---
## 📞 获取帮助
- **项目地址**: https://gitee.com/yu-yon/vue-driven-cloud-storage
- **问题反馈**: 提交Issue到Gitee仓库
- **部署文档**: 查看项目README.md
---
## 📝 注意事项
1. **需要root权限**: 脚本需要使用 `sudo` 或以root用户运行
2. **防火墙设置**: 确保80和443端口已开放
3. **域名解析**: 使用域名模式前请先将域名解析到服务器IP
4. **备份数据**: 升级前请备份数据库和配置文件
5. **网络环境**: 需要能够访问外网下载依赖包
---
**祝您使用愉快!** 🎉