本文档介绍如何使用Docker将Word模板处理系统部署到服务器上。
如果服务器上尚未安装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
将项目文件上传到服务器,可以使用Git克隆或直接上传:
# 使用Git克隆(如果项目在Git仓库中)
git clone <仓库地址> word-template-app
cd word-template-app
# 或者直接上传项目文件到服务器
将Word模板文件(.docx)放入项目的template
目录中。系统会自动使用该目录中的第一个.docx文件作为模板。
# 创建template目录(如果不存在)
mkdir -p template
# 将Word模板文件上传到template目录
使用Docker Compose构建和启动应用:
# 构建并在后台启动容器
docker-compose up -d
应用启动后,可以通过以下方式验证部署是否成功:
# 查看容器状态
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
: 存放应用日志检查Docker容器日志:
docker-compose logs word-template-app
确认服务器防火墙是否开放了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
检查模板文件格式是否正确,以及应用日志中的错误信息:
docker-compose logs word-template-app
如果需要通过域名访问或配置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