deployment.md 3.5 KB

Word模板处理系统部署指南(ai 生成)

本文档介绍如何使用Docker将Word模板处理系统部署到服务器上。

系统要求

  • 支持Docker和Docker Compose的Linux服务器
  • 至少1GB RAM
  • 至少5GB磁盘空间
  • 开放5000端口(或者您计划使用的端口)

部署步骤

1. 安装Docker和Docker Compose

如果服务器上尚未安装Docker和Docker Compose,请按照以下步骤安装:

# 安装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克隆或直接上传:

# 使用Git克隆(如果项目在Git仓库中)
git clone <仓库地址> word-template-app
cd word-template-app

# 或者直接上传项目文件到服务器

3. 准备Word模板

将Word模板文件(.docx)放入项目的template目录中。系统会自动使用该目录中的第一个.docx文件作为模板。

# 创建template目录(如果不存在)
mkdir -p template
# 将Word模板文件上传到template目录

4. 构建和启动Docker容器

使用Docker Compose构建和启动应用:

# 构建并在后台启动容器
docker-compose up -d

5. 验证部署

应用启动后,可以通过以下方式验证部署是否成功:

# 查看容器状态
docker-compose ps

# 查看应用日志
docker-compose logs

访问 http://服务器IP:5000 查看是否能打开应用界面。

维护和管理

停止应用

docker-compose stop

重启应用

docker-compose restart

查看日志

# 查看实时日志
docker-compose logs -f

更新应用

当有新版本时,按照以下步骤更新:

# 拉取最新代码(如果使用Git)
git pull

# 重新构建并启动容器
docker-compose down
docker-compose up -d --build

数据持久化

系统通过Docker卷挂载实现数据持久化,以下目录会被保存在宿主机上:

  • ./template: 存放Word模板文件
  • ./outputs: 存放生成的输出文件
  • ./logs: 存放应用日志

常见问题排查

1. 应用无法启动

检查Docker容器日志:

docker-compose logs word-template-app

2. 无法访问应用界面

确认服务器防火墙是否开放了5000端口:

# 对于使用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. 模板处理失败

检查模板文件格式是否正确,以及应用日志中的错误信息:

docker-compose logs word-template-app

安全建议

  1. 不要将应用直接暴露在公网上,建议使用反向代理(如Nginx)并配置HTTPS
  2. 定期更新Docker镜像和系统
  3. 设置适当的文件权限

使用Nginx作为反向代理

如果需要通过域名访问或配置HTTPS,可以使用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;
    }
}

备份策略

定期备份重要数据:

# 备份模板和输出文件
tar -czf word-template-backup-$(date +%Y%m%d).tar.gz template outputs