6.5 KiB
6.5 KiB
DMS合规性测试工具 - 离线部署指南
概述
本指南介绍如何在没有网络连接的环境中部署DMS合规性测试工具。
文件说明
生成的文件
dms-compliance-complete-offline-YYYYMMDD-HHMMSS.tar.gz- 完整离线部署包(约561MB)
打包脚本
create-offline-package.sh- 创建完整离线部署包docker-export.sh- 仅创建Docker镜像包install-docker.sh- Docker安装脚本
部署步骤
1. 准备阶段(在有网络的环境中)
# 创建完整离线部署包
./create-offline-package.sh
这将生成一个包含所有必要组件的tar.gz文件。
2. 传输到目标环境
将生成的 dms-compliance-complete-offline-*.tar.gz 文件传输到目标服务器:
# 使用scp传输(如果有网络连接)
scp dms-compliance-complete-offline-*.tar.gz user@target-server:/path/to/destination/
# 或使用U盘、移动硬盘等物理介质传输
3. 在目标环境中部署
# 解压部署包
tar -xzf dms-compliance-complete-offline-*.tar.gz
# 进入部署目录
cd dms-compliance-complete-offline-*
# 运行一键安装脚本
./install.sh
4. 验证部署
安装完成后,访问以下地址验证服务:
- API服务器: http://localhost:5050
- 历史查看器: http://localhost:5051
部署包内容
核心组件
- DMS合规性测试工具Docker镜像
- Nginx Docker镜像(用于反向代理)
- Docker和Docker Compose安装脚本
- 自动化部署脚本
配置文件
docker-compose.yml- Docker服务编排配置nginx/nginx.conf- Nginx配置(如果存在)config/- 应用配置文件(如果存在)
脚本文件
install.sh- 一键安装脚本deploy.sh- 部署脚本stop.sh- 停止服务脚本uninstall.sh- 卸载脚本install-docker.sh- Docker安装脚本
数据目录
data/test_reports/- 测试报告存储data/uploads/- 上传文件存储data/logs/- 应用日志存储
系统要求
最低要求
- CPU: 2核心
- 内存: 2GB
- 磁盘: 5GB可用空间
- 操作系统:
- Ubuntu 18.04+
- CentOS 7+
- RHEL 7+
- Debian 9+
推荐配置
- CPU: 4核心
- 内存: 4GB
- 磁盘: 10GB可用空间
安装选项
方法一:一键安装(推荐)
./install.sh
- 自动检测Docker是否已安装
- 如未安装,提示安装Docker
- 自动部署应用服务
方法二:分步安装
# 1. 安装Docker(如果需要)
./install-docker.sh
# 2. 重新登录或刷新用户组
newgrp docker
# 3. 部署应用
./deploy.sh
服务管理
基本操作
# 查看服务状态
docker-compose ps
# 查看服务日志
docker-compose logs
# 重启服务
docker-compose restart
# 停止服务
./stop.sh
# 完全卸载
./uninstall.sh
高级操作
# 查看详细日志
docker-compose logs -f dms-compliance-tool
# 进入容器
docker exec -it dms-compliance-tool bash
# 查看容器资源使用
docker stats dms-compliance-tool
网络配置
端口说明
- 5050: API服务器端口
- 5051: 历史查看器端口
- 80/443: Nginx反向代理端口(可选)
防火墙配置
# CentOS/RHEL
sudo firewall-cmd --permanent --add-port=5050/tcp
sudo firewall-cmd --permanent --add-port=5051/tcp
sudo firewall-cmd --reload
# Ubuntu/Debian
sudo ufw allow 5050
sudo ufw allow 5051
使用Nginx反向代理
# 启动包含Nginx的完整服务
docker-compose --profile with-nginx up -d
故障排除
常见问题
-
Docker未安装或未启动
# 检查Docker状态 sudo systemctl status docker # 启动Docker sudo systemctl start docker -
端口冲突
- 修改
docker-compose.yml中的端口映射 - 或停止占用端口的其他服务
- 修改
-
权限问题
sudo chown -R $USER:$USER data/ chmod -R 755 data/ -
内存不足
- 确保系统有至少2GB可用内存
- 关闭不必要的服务
日志查看
# 应用日志
docker-compose logs dms-compliance-tool
# 系统日志
journalctl -u docker
# 容器详细信息
docker inspect dms-compliance-tool
性能优化
# 清理未使用的Docker资源
docker system prune -f
# 查看磁盘使用情况
df -h
# 查看内存使用情况
free -h
数据备份与恢复
备份数据
# 备份所有数据
tar -czf dms-backup-$(date +%Y%m%d).tar.gz data/
# 仅备份测试报告
tar -czf reports-backup-$(date +%Y%m%d).tar.gz data/test_reports/
恢复数据
# 停止服务
./stop.sh
# 恢复数据
tar -xzf dms-backup-YYYYMMDD.tar.gz
# 重启服务
./deploy.sh
更新升级
- 停止当前服务:
./stop.sh - 备份数据:
cp -r data/ data_backup/ - 部署新版本
- 恢复数据(如需要)
安全建议
- 定期备份
data/目录 - 限制网络访问(仅内网使用)
- 定期更新Docker和系统
- 监控资源使用情况
- 设置防火墙规则
技术支持
如遇到问题,请提供以下信息:
- 系统信息:
cat /etc/os-release - Docker版本:
docker --version - 错误日志:
docker-compose logs - 系统资源:
free -h && df -h - 网络状态:
netstat -tlnp | grep -E ':(5050|5051)'
附录
目录结构
dms-compliance-complete-offline-YYYYMMDD-HHMMSS/
├── README.md # 详细说明文档
├── VERSION # 版本信息
├── install.sh # 一键安装脚本
├── deploy.sh # 部署脚本
├── stop.sh # 停止脚本
├── uninstall.sh # 卸载脚本
├── install-docker.sh # Docker安装脚本
├── docker-compose.yml # Docker编排配置
├── dms-compliance-tool.tar # 主应用镜像
├── nginx-alpine.tar # Nginx镜像
├── data/ # 数据目录
│ ├── test_reports/ # 测试报告
│ ├── uploads/ # 上传文件
│ └── logs/ # 日志文件
├── config/ # 配置文件(可选)
└── nginx/ # Nginx配置(可选)
环境变量
可以通过修改 docker-compose.yml 中的环境变量来自定义配置:
FLASK_ENV: Flask运行环境(production/development)PYTHONUNBUFFERED: Python输出缓冲设置TZ: 时区设置(默认:Asia/Shanghai)