部署接口自动化测试平台(ITP)

立即开始

环境准备

  • 操作系统:CentOS 7+ (已验证)Linux(如 Ubuntu、Debian、CentOS)、macOS、Windows(未验证)
  • Docker 版本:>= 20.10
  • Docker Compose 版本:== v3.8
  • 防火墙配置,开放端口:18899(前端服务)、3308(MySQL)、8898(Django 后端服务)、6380(Redis)

环境配置

修改 .env 文件(可选),并添加以下内容: 支持的环境变量如下:

变量名说明默认值
IMAGE_TAG镜像标签latest
REGISTRY共有仓库地址crpi-ncj9jrb3jfedicto.cn-hangzhou.personal.cr.aliyuncs.com/autoplatform
FRONTEND_IMAGE前端镜像名${REGISTRY}/itp-frontend
DJANGO_IMAGE后端镜像名${REGISTRY}/itp-django
CELERY_WORKER_IMAGECelery Worker 镜像名${REGISTRY}/itp-celery-worker
CELERY_BEAT_IMAGECelery Beat 镜像名${REGISTRY}/itp-celery-beat
MYSQL_ROOT_PASSWORDMySQL 数据库密码test1234
MYSQL_DATABASE数据库名itp
MYSQL_PORTMySQL 映射端口3308
REDIS_PORTRedis 映射端口6380
LOGS_DIR日志目录./logs
STATIC_DATA静态文件卷static-data
MEDIA_DATA媒体文件卷media-data
FIRST_DEPLOY首次部署标记true
VITE_API_BASE_URL用于配置 API 请求的基础 URLhttp://1.95.215.79:8898

注意:部署前需配置 .env 文件,并修改相关参数,建议修改密码。

🐳 部署说明

项目部署的文件结构
itp/
├── docker-compose-remote.yaml  # 修改后的版本
├── .env
├── logs/
├── static-data/
├── media-data/
└── README.md

1. 安装 Docker 和 Docker Compose

确保你已安装 Docker 和 Docker Compose

2. 启动服务

建议在opt目录下创建项目
拉取安装包
git clone https://gitee.com/hp631012651/itp.git
创建目录
#进入项目目录
cd itp
# 创建日志目录及其子目录
mkdir -p logs/nginx

# 创建数据目录(虽然 Docker 会自动创建,但手动创建更清晰)
mkdir -p static-data
mkdir -p media-data

# 进入项目目录
cd /opt/itp

# 检查当前权限
ls -la

# 设置目录权限
chmod 755 logs
chmod 777 logs/nginx
chmod 777 static-data
chmod 777 media-data

# 验证权限设置
ls -la

bash(阿里镜像仓库--推荐)

docker-compose -f docker-compose-remote.yaml up -d

备选方案(华为云镜像仓库)

如果使用华为云镜像仓库,需要修改.env:
# 修改为华为云仓库地址
REGISTRY=swr.cn-north-4.myhuaweicloud.com/autoplatform
# 然后再启动服务
docker-compose -f docker-compose-huawei.yaml up -d

3. 查看日志

bash(阿里镜像仓库--推荐))    
docker-compose -f docker-compose-remote.yaml logs -f  

备选方案(华为云镜像仓库)

docker-compose -f docker-compose-huawei.yaml ps  

docker-compose -f docker-compose-huawei.yaml logs -f

4. 访问系统

http://your-server-ip:18899

注册账号,登录即可使用系统。(注意新注册的账号只有可读权限,需要后台开通可写权限)

例如: 自动化测试平台

swagger访问地址: http://your-server-ip:8898/swagger

5. 客户使用建议

账号管理
建议创建一个管理员账号和多个测试账号 推荐使用 Django Admin 后台管理用户
docker exec -it itp-django-end /envs/dj/bin/python manage.py createsuperuser
访问地址:http://your-server-ip:18899/admin 开通可写权限,如图: 

5.1 数据备份

数据备份

数据库:使用 mysqldump 定期备份

静态资源:备份 static-data 和 media-data

日志:备份 logs/ 目录

5.2 日志查看

查看所有服务日志

docker-compose -f docker-compose-remote.yaml logs -f

查看后端日志

docker-compose -f docker-compose-remote.yaml logs django-app

查看前端日志

docker-compose -f docker-compose-remote.yaml logs vuefront

5.3 镜像更新

拉取最新镜像

docker-compose -f docker-compose-remote.yaml pull

重启服务

docker-compose -f docker-compose-remote.yaml up -d

5.4 操作说明

请登录系统查看系统设置-操作说明

FAQ:

1.Request URL: http://your-server-ip:18899/testproject/api/testpro/projects/
Request Method: GET
Status Code: 507 Insufficient Storage

解决方法:

 # 进入 Django 容器  
docker exec -it itp-django-end bash 

# 查看所有应用的迁移状态
python manage.py showmigrations  

一共有30张表;auth_group,auth_group_permissions,auth_permission,bughandle,bugmanage,cronjob,django_admin_log,django_celery_beat_clockedschedule,django_celery_beat_crontabschedule,django_celery_beat_intervalschedule,django_celery_beat_periodictask,django_celery_beat_periodicttasks,django_celery_beat_solarschedule,django_content_type,django_migrations,django_migrations,django_sesseion,interface,interfacecases,scenetocase,tb_users,tb_users_groups,tb_users_user_permissions,testenv,testfile,testproject,testrecord,testreport,testscenes,testtask,testtask_scene

# 进入 Django 容器
docker exec -it itp-django-end bash

# 激活 Python 环境
. /envs/dj/bin/activate

# 进入项目目录
cd /data/ITP

# 生成所有应用的迁移文件
 python manage.py makemigrations Testproject  

 python manage.py makemigrations TestInterface    

 python manage.py makemigrations scenes   

 python manage.py makemigrations TestTask 

 python manage.py makemigrations Cronjob                                          

 python manage.py makemigrations BugManage
 
 python manage.py migrate

2.手动创建管理员账号

# 进入 Django 容器
docker exec -it itp-django-end bash   

# 激活虚拟环境
. /envs/dj/bin/activate

# 进入项目目录
cd /data/ITP

# 创建超级用户
python manage.py createsuperuser --noinput

3.如何进入mysql容器内部操作?

# 进入 MySQL 容器
docker exec -it itp-mysql bash

# 连接 MySQL 数据库
mysql -u root -p
# 输入密码: test1234

# 或者直接连接指定数据库
mysql -u root -p itp
# 输入密码: test1234

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值