2.3 KiB
2.3 KiB
生产环境部署指南
安全配置步骤
1. 配置环境变量
复制环境变量模板并修改敏感信息:
# 复制模板文件
cp .env.example .env
# 编辑 .env 文件,修改以下敏感配置:
nano .env
必须修改的配置:
FILE_LIST_PASSWORD- 设置强密码(建议使用随机生成的密码)JWT_SECRET_KEY- 设置随机密钥(建议使用 32 位以上随机字符串)
生成强密码和密钥的方法:
# 生成密码
openssl rand -base64 32
# 生成 JWT 密钥
openssl rand -hex 32
2. 文件权限设置
# 创建文件目录
mkdir -p files
# 设置适当的权限
chmod 755 files
3. 部署到服务器
# 克隆仓库
git clone https://github.com/YOUR_USERNAME/REPO_NAME.git
cd REPO_NAME
# 配置环境变量
cp .env.example .env
# 编辑 .env 文件...
# 构建并启动
docker-compose up -d --build
4. 验证部署
# 检查服务状态
docker-compose ps
# 查看日志
docker-compose logs -f
# 测试 API
curl http://localhost/api/health
环境变量说明
| 变量名 | 说明 | 默认值 | 是否必须修改 |
|---|---|---|---|
FILE_LIST_PASSWORD |
文件列表访问密码 | admin123 | 是 |
JWT_SECRET_KEY |
JWT 签名密钥 | your-secret-key | 是 |
NOTES_DIR |
文件存储目录 | /app/data | 否 |
MAX_FILE_SIZE |
最大文件大小(字节) | 100000 | 否 |
JWT_EXPIRE_MINUTES |
JWT 过期时间(分钟) | 1440 | 否 |
安全建议
-
定期更换密码
- 建议每 3 个月更换一次
FILE_LIST_PASSWORD - 每年更换一次
JWT_SECRET_KEY
- 建议每 3 个月更换一次
-
使用 HTTPS
- 配置反向代理(Nginx/Traefik)
- 申请 SSL 证书(Let's Encrypt)
-
备份策略
- 定期备份
./files目录 - 备份
.env文件(存储在安全位置)
- 定期备份
-
监控
- 监控容器资源使用
- 设置日志轮转
- 配置告警机制
故障排除
-
密码错误
- 检查
.env文件中的FILE_LIST_PASSWORD - 重启容器:
docker-compose restart backend
- 检查
-
JWT 错误
- 检查
.env文件中的JWT_SECRET_KEY - 清除浏览器 localStorage 中的 token
- 检查
-
权限问题
- 确保
files目录有写权限 - 检查 Docker 容器用户权限
- 确保