在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
QAPlatform1、介绍
2、软件架构QAPlatform 使用Python3进行开发,主要选用了 django+django rest framework(简称:drf)+pymysql+redis+celery+uwsgi 框架组合。
3、部署教程本次部署环境为CentOS7操作系统。Windows操作系统,请参阅README.windows.md文档。 3.1、CentOS7安装dockeryum install -y epel-release docker-io 3.2、docker安装redisdocker run -d --name redis -p 6379:6379 --restart=always docker.io/redis:latest 3.3、docker安装mysql安装mysql数据库docker run -d --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root --restart=always -v /var/lib/mysql:/var/lib/mysql docker.io/mysql:5.7.28 3.4、docker安装nginx,部署前端程序docker run -d --name nginx -p 80:80 --restart=always docker.io/nginx# 注意:结合部署环境的情况,修改nginx配置如下# 1、修改QAPlatform部署的服务器IP以及服务监听的端口# 示例:系统部署的服务器ip为172.17.0.1;uwsgi.ini设置的程序端口为8000,那么upstream QAPlatform配置如下代码所示upstream QAPlatform { # ip使用部署服务器的ip或域名,端口与uwsgi.ini设置的端口保持一致 server 172.17.0.1:8000;}# 2、修改nginx监听的端口,默认监听的是80端口# 示例:nginx监听的端口为80,那么server listen配置如下代码所示server { listen 80;}# 3、将 nginx配置文件 目录下的nginx-socket.conf更名为nginx.conf;再将nginx.conf拷贝到nginx容器的/etc/nginx目录中docker cp ./nginx配置文件/nginx.conf nginx:/etc/nginx# 4、将已打包的前端程序dist目录中的文件拷贝到nginx容器的/home/QAPlatformWeb目录中docker cp ./dist nginx:/home/QAPlatformWeb# 5、将nginx服务重新加载docker exec nginx nginx -s reload 3.5、安装Python、Pip环境,创建虚拟环境一、安装Python环境# 1、安装依赖sudo yum install -y libffi-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel zlib gcc make# 2、下载Python程序# Python包地址:https://www.python.org/ftp/python/wget https://www.python.org/ftp/python/3.8.5/Python-3.8.5.tgz# 3、解压Python-3.8.5.tgztar -zxvf Python-3.8.5.tgz# 4、编译安装sudo mkdir /usr/local/python3.8.5cd Python-3.8.5sudo ./configure --prefix=/usr/local/python3.8.5sudo make && sudo make install# 5、建立软链接sudo ln -s /usr/local/python3.8.5/bin/python3 /usr/bin/python3sudo ln -s /usr/local/python3.8.5/bin/pip3 /usr/bin/pip3# 6、验证安装python3 -Vpip3 -V二、安装虚拟环境、创建虚拟环境# 1、安装虚拟环境virtualenvyum install -y python-virtualenv# 2、创建虚拟环境# 在项目根目录创建虚拟环境virtualenv -p python3 venv# 3、激活虚拟环境source ./venv/bin/activate# 4、退出虚拟环境deactivate 3.6、安装项目依赖# 在激活的虚拟环境中安装项目依赖# 在requirements.txt所在目录中执行以下命令pip install -r requirements.txt 3.7、迁移数据库,导入初始数据# 创建数据库# 1、进入mysql docker容器docker exec -it mysql /bin/bash# 2、登录mysql数据库mysql -uroot -proot# 3、创建QAPlatform数据库CREATE DATABASE IF NOT EXISTS QAPlatform DEFAULT CHARSET utf8 COLLATE utf8_general_ci;# 注:本项目的数据库名为:QAPlatform,用户名为:root,密码为:root;用户可根据实际需求,创建相应的数据库以及用户名和密码,并且在项目的QAPlatform/settings.py文件中修改数据库配置,保持一致即可。# 执行迁移数据库,在manage.py所在目录执行以下命令python manage.py makemigrationspython manage.py migrate# 数据库迁移成功生成表后,执行 sql 文件夹中的脚本,导入初始数据# 执行顺序:basic_user.sql、basic_role.sql、basic_user_roles.sql、basic_markdown.sql、basic_permission.sql 4、使用说明4.1、启动、停止uwsgi服务# 启动服务,参数-d代表后台运行uwsgi -d --ini uwsgi.ini# 重新加载服务uwsgi --reload uwsgi.pid# 停止服务uwsgi --stop uwsgi.pid 4.2、启动定时服务celery# 在项目QAPlatform目录中执行以下命令,启动celery定时服务nohup celery worker -A QAPlatform --loglevel=info --pool=solo --pidfile=celery-worker.pid --logfile=./logs/celery-worker.log & 4.3、启动定时调度服务django_celery_beat# 在项目QAPlatform目录中执行以下命令,启动celery定时调度服务nohup celery beat -A QAPlatform --loglevel=info --scheduler django_celery_beat.schedulers:DatabaseScheduler --pidfile=celery-beat.pid --logfile=./logs/celery-beat.log & 5、前端界面展示5.1、定时任务服务
5.2、接口自动化测试
6、捐赠如果对您有帮助,请微信扫码,捐赠以表支持,谢谢 |
请发表评论