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

mikeh · 2025年08月04日 · 529 次阅读


立即开始
环境准备
操作系统: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_IMAGE Celery Worker 镜像名 ${REGISTRY}/itp-celery-worker
CELERY_BEAT_IMAGE Celery Beat 镜像名 ${REGISTRY}/itp-celery-beat
MYSQL_ROOT_PASSWORD MySQL 数据库密码 test1234
MYSQL_DATABASE 数据库名 itp
MYSQL_PORT MySQL 映射端口 3308
REDIS_PORT Redis 映射端口 6380
LOGS_DIR 日志目录 ./logs
STATIC_DATA 静态文件卷 static-data
MEDIA_DATA 媒体文件卷 media-data
FIRST_DEPLOY 首次部署标记 true
VITE_API_BASE_URL 用于配置 API 请求的基础 URL http://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

  1. 查看日志 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

  1. 访问系统 http://your-server-ip:18899

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

例如: 自动化测试平台

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

  1. 客户使用建议 账号管理 建议创建一个管理员账号和多个测试账号 推荐使用 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

暫無回覆。
需要 登录 後方可回應,如果你還沒有帳號按這裡 注册