4.4 KiB
4.4 KiB
DMS合规性测试工具 Docker快速参考
🚀 快速命令
一键部署
# 构建并启动服务
./docker-build.sh
# 测试Docker镜像
./test-docker.sh
基本操作
# 构建镜像
docker build -f Dockerfile.service -t dms-compliance-tool .
# 启动容器
docker run -d --name dms-compliance-tool -p 5050:5050 dms-compliance-tool
# 查看状态
docker ps
# 查看日志
docker logs dms-compliance-tool
# 停止容器
docker stop dms-compliance-tool
# 删除容器
docker rm dms-compliance-tool
📁 文件说明
| 文件 | 说明 |
|---|---|
Dockerfile.service |
服务运行镜像定义 |
docker-compose.yml |
Docker Compose配置 |
docker-build.sh |
自动化构建脚本 |
test-docker.sh |
Docker测试脚本 |
.dockerignore |
Docker构建忽略文件 |
nginx/nginx.conf |
Nginx反向代理配置 |
🔧 常用场景
开发环境
# 构建开发镜像
docker build -f Dockerfile.service -t dms-compliance-tool:dev .
# 启动开发容器(挂载代码目录)
docker run -d \
--name dms-dev \
-p 5050:5050 \
-v $(pwd):/app \
-e FLASK_ENV=development \
dms-compliance-tool:dev
生产环境
# 使用Docker Compose启动完整服务
docker-compose up -d
# 查看服务状态
docker-compose ps
# 查看日志
docker-compose logs -f
测试环境
# 运行测试
./test-docker.sh
# 仅构建测试镜像
./test-docker.sh --build-only
# 清理测试环境
./test-docker.sh --cleanup-only
🛠️ 故障排除
检查容器状态
# 查看所有容器
docker ps -a
# 查看容器详细信息
docker inspect dms-compliance-tool
# 进入容器调试
docker exec -it dms-compliance-tool bash
查看资源使用
# 实时资源监控
docker stats
# 查看镜像大小
docker images
# 清理未使用资源
docker system prune -a
网络问题
# 查看端口映射
docker port dms-compliance-tool
# 测试网络连接
curl http://localhost:5050
# 查看容器网络
docker network ls
📦 镜像管理
本地镜像操作
# 列出镜像
docker images
# 删除镜像
docker rmi dms-compliance-tool
# 导出镜像
docker save dms-compliance-tool | gzip > dms-tool.tar.gz
# 导入镜像
gunzip -c dms-tool.tar.gz | docker load
镜像仓库操作
# 标记镜像
docker tag dms-compliance-tool:latest registry.example.com/dms-tool:v1.0
# 推送镜像
docker push registry.example.com/dms-tool:v1.0
# 拉取镜像
docker pull registry.example.com/dms-tool:v1.0
🔄 更新流程
应用更新
# 1. 停止现有服务
docker-compose down
# 2. 重新构建镜像
docker-compose build --no-cache
# 3. 启动新服务
docker-compose up -d
# 4. 验证服务
curl http://localhost:5050
配置更新
# 1. 修改配置文件
vim docker-compose.yml
# 2. 重新启动服务
docker-compose restart
# 3. 查看更新后的配置
docker-compose config
📊 监控命令
实时监控
# 容器资源使用
docker stats dms-compliance-tool
# 容器日志
docker logs -f dms-compliance-tool
# 系统事件
docker events
健康检查
# 检查容器健康状态
docker inspect dms-compliance-tool | grep -A 5 Health
# 手动健康检查
curl -f http://localhost:5050/ || echo "Service unhealthy"
🎯 最佳实践
安全
- 使用非root用户运行容器
- 限制容器资源使用
- 定期更新基础镜像
- 使用多阶段构建减小镜像大小
性能
- 使用.dockerignore减少构建上下文
- 合理设置内存和CPU限制
- 使用数据卷持久化重要数据
- 配置日志轮转避免日志文件过大
维护
- 定期清理未使用的镜像和容器
- 备份重要数据和配置
- 监控容器资源使用情况
- 建立镜像版本管理策略
🆘 紧急操作
服务异常
# 快速重启
docker restart dms-compliance-tool
# 强制停止
docker kill dms-compliance-tool
# 查看最近日志
docker logs --tail 50 dms-compliance-tool
数据恢复
# 从容器复制文件
docker cp dms-compliance-tool:/app/test_reports ./backup/
# 向容器复制文件
docker cp ./backup/config.json dms-compliance-tool:/app/
完全重置
# 停止并删除所有相关容器
docker-compose down -v
# 删除镜像
docker rmi dms-compliance-tool
# 重新构建和启动
./docker-build.sh --clean