# Word模板处理系统部署指南(ai 生成) 本文档介绍如何使用Docker将Word模板处理系统部署到服务器上。 ## 系统要求 - 支持Docker和Docker Compose的Linux服务器 - 至少1GB RAM - 至少5GB磁盘空间 - 开放5000端口(或者您计划使用的端口) ## 部署步骤 ### 1. 安装Docker和Docker Compose 如果服务器上尚未安装Docker和Docker Compose,请按照以下步骤安装: ```bash # 安装Docker curl -fsSL https://get.docker.com -o get-docker.sh sudo sh get-docker.sh # 安装Docker Compose sudo curl -L "https://github.com/docker/compose/releases/download/v2.23.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose ``` ### 2. 准备项目文件 将项目文件上传到服务器,可以使用Git克隆或直接上传: ```bash # 使用Git克隆(如果项目在Git仓库中) git clone <仓库地址> word-template-app cd word-template-app # 或者直接上传项目文件到服务器 ``` ### 3. 准备Word模板 将Word模板文件(.docx)放入项目的`template`目录中。系统会自动使用该目录中的第一个.docx文件作为模板。 ```bash # 创建template目录(如果不存在) mkdir -p template # 将Word模板文件上传到template目录 ``` ### 4. 构建和启动Docker容器 使用Docker Compose构建和启动应用: ```bash # 构建并在后台启动容器 docker-compose up -d ``` ### 5. 验证部署 应用启动后,可以通过以下方式验证部署是否成功: ```bash # 查看容器状态 docker-compose ps # 查看应用日志 docker-compose logs ``` 访问 `http://服务器IP:5000` 查看是否能打开应用界面。 ## 维护和管理 ### 停止应用 ```bash docker-compose stop ``` ### 重启应用 ```bash docker-compose restart ``` ### 查看日志 ```bash # 查看实时日志 docker-compose logs -f ``` ### 更新应用 当有新版本时,按照以下步骤更新: ```bash # 拉取最新代码(如果使用Git) git pull # 重新构建并启动容器 docker-compose down docker-compose up -d --build ``` ## 数据持久化 系统通过Docker卷挂载实现数据持久化,以下目录会被保存在宿主机上: - `./template`: 存放Word模板文件 - `./outputs`: 存放生成的输出文件 - `./logs`: 存放应用日志 ## 常见问题排查 ### 1. 应用无法启动 检查Docker容器日志: ```bash docker-compose logs word-template-app ``` ### 2. 无法访问应用界面 确认服务器防火墙是否开放了5000端口: ```bash # 对于使用ufw的系统 sudo ufw status sudo ufw allow 5000/tcp # 对于使用firewalld的系统 sudo firewall-cmd --zone=public --add-port=5000/tcp --permanent sudo firewall-cmd --reload ``` ### 3. 模板处理失败 检查模板文件格式是否正确,以及应用日志中的错误信息: ```bash docker-compose logs word-template-app ``` ## 安全建议 1. 不要将应用直接暴露在公网上,建议使用反向代理(如Nginx)并配置HTTPS 2. 定期更新Docker镜像和系统 3. 设置适当的文件权限 ## 使用Nginx作为反向代理 如果需要通过域名访问或配置HTTPS,可以使用Nginx作为反向代理: ```nginx server { listen 80; server_name your-domain.com; location / { proxy_pass http://localhost:5000; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } } ``` ## 备份策略 定期备份重要数据: ```bash # 备份模板和输出文件 tar -czf word-template-backup-$(date +%Y%m%d).tar.gz template outputs ```