立即开始
环境准备
- 操作系统: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
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. 访问系统
注册账号,登录即可使用系统。(注意新注册的账号只有可读权限,需要后台开通可写权限)
例如: 自动化测试平台
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
1529

被折叠的 条评论
为什么被折叠?



