157 lines
3.3 KiB
Markdown
157 lines
3.3 KiB
Markdown
|
|
# 部署配置更新日志
|
|||
|
|
|
|||
|
|
## v1.0.1 (2024-12-23)
|
|||
|
|
|
|||
|
|
### 🔧 配置变更
|
|||
|
|
|
|||
|
|
#### 1. 前端端口调整
|
|||
|
|
- **变更**: 前端默认端口从 `80` 改为 `8080`
|
|||
|
|
- **原因**: 避免与常见服务冲突,提高兼容性
|
|||
|
|
- **影响**:
|
|||
|
|
- 访问地址变更为: `http://localhost:8080`
|
|||
|
|
- 可在 `.env` 中配置 `FRONTEND_PORT` 自定义端口
|
|||
|
|
|
|||
|
|
#### 2. 存储目录映射优化
|
|||
|
|
- **变更**: Storage 目录从 Docker Volume 改为宿主机目录映射
|
|||
|
|
- **配置项**: 新增环境变量 `STORAGE_PATH`
|
|||
|
|
- 默认值: `./storage`
|
|||
|
|
- 支持相对路径和绝对路径
|
|||
|
|
- 示例:
|
|||
|
|
```bash
|
|||
|
|
STORAGE_PATH=./storage # 相对路径
|
|||
|
|
STORAGE_PATH=/data/nex-docus-data # 绝对路径
|
|||
|
|
```
|
|||
|
|
- **优势**:
|
|||
|
|
- ✅ 便于直接访问和管理文件
|
|||
|
|
- ✅ 方便备份和迁移
|
|||
|
|
- ✅ 支持挂载到独立磁盘或网络存储
|
|||
|
|
- ✅ 数据独立于容器生命周期
|
|||
|
|
|
|||
|
|
### 📝 配置文件更新
|
|||
|
|
|
|||
|
|
已更新以下文件:
|
|||
|
|
- `.env.example` - 添加 `STORAGE_PATH` 配置,修改 `FRONTEND_PORT` 默认值
|
|||
|
|
- `docker-compose.yml` - 修改 storage 为宿主机目录映射
|
|||
|
|
- `deploy.sh` - 更新访问信息显示
|
|||
|
|
- `DEPLOY.md` - 更新部署文档
|
|||
|
|
|
|||
|
|
### 🔄 迁移指南
|
|||
|
|
|
|||
|
|
如果您已经部署了旧版本,需要进行以下操作:
|
|||
|
|
|
|||
|
|
#### 方案 1: 保留现有数据(推荐)
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# 1. 停止服务
|
|||
|
|
./deploy.sh stop
|
|||
|
|
|
|||
|
|
# 2. 备份现有数据
|
|||
|
|
docker run --rm -v nex-docus_storage_data:/from -v $(pwd)/storage:/to alpine sh -c "cd /from && cp -r . /to"
|
|||
|
|
|
|||
|
|
# 3. 更新配置文件
|
|||
|
|
cp .env.example .env
|
|||
|
|
vim .env # 配置 STORAGE_PATH=./storage
|
|||
|
|
|
|||
|
|
# 4. 重新启动
|
|||
|
|
./deploy.sh start
|
|||
|
|
|
|||
|
|
# 5. 删除旧的 volume(可选)
|
|||
|
|
docker volume rm nex-docus_storage_data
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 方案 2: 全新部署
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
# 1. 备份数据库
|
|||
|
|
./deploy.sh backup
|
|||
|
|
|
|||
|
|
# 2. 完全卸载
|
|||
|
|
./deploy.sh uninstall
|
|||
|
|
|
|||
|
|
# 3. 重新初始化
|
|||
|
|
./deploy.sh init
|
|||
|
|
|
|||
|
|
# 4. 恢复数据库(如需要)
|
|||
|
|
./deploy.sh restore <backup_file>
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 📊 配置示例
|
|||
|
|
|
|||
|
|
#### 开发环境配置
|
|||
|
|
```bash
|
|||
|
|
FRONTEND_PORT=8080
|
|||
|
|
BACKEND_PORT=8000
|
|||
|
|
STORAGE_PATH=./storage
|
|||
|
|
DEBUG=true
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 生产环境配置
|
|||
|
|
```bash
|
|||
|
|
FRONTEND_PORT=80
|
|||
|
|
BACKEND_PORT=8000
|
|||
|
|
STORAGE_PATH=/data/nex-docus-storage
|
|||
|
|
DEBUG=false
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
#### 多实例部署配置
|
|||
|
|
```bash
|
|||
|
|
# 实例 1
|
|||
|
|
FRONTEND_PORT=8081
|
|||
|
|
BACKEND_PORT=8001
|
|||
|
|
STORAGE_PATH=/data/instance1/storage
|
|||
|
|
|
|||
|
|
# 实例 2
|
|||
|
|
FRONTEND_PORT=8082
|
|||
|
|
BACKEND_PORT=8002
|
|||
|
|
STORAGE_PATH=/data/instance2/storage
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### ⚙️ 存储路径说明
|
|||
|
|
|
|||
|
|
`STORAGE_PATH` 目录结构:
|
|||
|
|
```
|
|||
|
|
storage/
|
|||
|
|
├── projects/ # 项目文档存储
|
|||
|
|
│ ├── <uuid1>/ # 项目 1
|
|||
|
|
│ │ ├── README.md
|
|||
|
|
│ │ ├── docs/
|
|||
|
|
│ │ └── _assets/ # 项目资源
|
|||
|
|
│ └── <uuid2>/ # 项目 2
|
|||
|
|
└── temp/ # 临时文件
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 🔒 安全建议
|
|||
|
|
|
|||
|
|
1. **权限设置**
|
|||
|
|
```bash
|
|||
|
|
# 设置适当的目录权限
|
|||
|
|
chmod 755 storage
|
|||
|
|
chown -R 1000:1000 storage # Docker 容器内用户
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
2. **备份策略**
|
|||
|
|
```bash
|
|||
|
|
# 定时备份 storage 目录
|
|||
|
|
tar -czf storage_backup_$(date +%Y%m%d).tar.gz storage/
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
3. **网络存储**
|
|||
|
|
```bash
|
|||
|
|
# 挂载 NFS
|
|||
|
|
mount -t nfs server:/share /data/nex-docus-storage
|
|||
|
|
|
|||
|
|
# 配置 .env
|
|||
|
|
STORAGE_PATH=/data/nex-docus-storage
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 📞 支持
|
|||
|
|
|
|||
|
|
如有问题,请查看:
|
|||
|
|
- [部署文档](DEPLOY.md)
|
|||
|
|
- [项目文档](README_DOCKER.md)
|
|||
|
|
- 或提交 Issue
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
**更新时间**: 2024-12-23
|