GithubHelp home page GithubHelp logo

pillar20 / anotherfasterrunner Goto Github PK

View Code? Open in Web Editor NEW

This project forked from lihuacai168/anotherfasterrunner

0.0 0.0 0.0 732 KB

基于HttpRunner+Python+DRF+Vue的接口自动化测试平台

License: MIT License

Shell 0.22% Dockerfile 0.10% Python 51.79% HTML 47.89%

anotherfasterrunner's Introduction

FasterRunner后端部署

LICENSE travis-ci pyversions

平台文档

点这里~

Docker部署

1.拉取和运行MySQL

  • 拉取docker mysql镜像 docker pull docker.io/mysql:5.7
  • 运行docker mysql容器 docker run --name mysql --net=host -d --restart always -v /var/lib/mysql:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=faster12356 docker.io/mysql:5.7 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
  • 命令解释
# --name mysql : 容器名字叫mysql
# --net=host : 网络模式是host
# -d : 容器后台运行
# --restart always : 容器自动重启
# -v /var/lib/mysql:/var/lib/mysql : -v 容器数据卷挂载,宿主机目录:容器目录
# -e  MYSQL_ROOT_PASSWORD=faster12356 : mysql容器的root用户密码为faster12356

2.创建MySQL用户

  • 进入mysql容器 docker exec -it mysql /bin/bash
  • 用root用户连接mysql mysql -uroot -pfaster12356
  • 创建远程登陆faster用户,密码是faster2019
CREATE USER 'faster'@'%' IDENTIFIED BY 'faster2019';

3.创建和授权数据库

  • 创建db_faster数据库 create database db_faster default charset utf7 collate utf8_general_ci;
  • 授权给faster用户
grant all privileges on db_faster.* to 'faster'@'localhost' identified by 'faster2019'; # 本地授权
grant all privileges on db_faster.* to 'faster'@'%' identified by 'faster2019'; #远程授权
flush privileges; # 刷新权限表,使授权生效

4.Django连接数据库设置

  • 修改数据库设置生产环境的数据库配置,路径是/FasterRunner/settings/pro.py里面DATABASES字典相关配置NAME,USER,PASSWORD,HOST

5.配置和运行RabbittMQ(消息队列中间件)

  • 运行RabbittMQ
# 跟宿主机同一个网络启动
docker run -d --name rabbitmq --net=host --restart always  -e RABBITMQ_DEFAULT_USER=username -e RABBITMQ_DEFAULT_PASS=password rabbitmq:3-management
# 指定端口和网络启动
docker run -d --hostname my-rabbit --name rabbit --restart always -p 15672:15672 -p 5672:5672 -e RABBITMQ_DEFAULT_USER=username -e RABBITMQ_DEFAULT_PASS=password rabbitmq:3.7.7-management
  • 配置RabbittMQ/FasterRunner/settings/base.py修改BROKER_URLIP,username,password

6.构建fastrunner镜像

docker build -t fastrunner:latest .

7.后台运行fastrunner容器,默认端口8000

docker run -d --name fastrunner --net=host --restart always fastrunner:latest

8.进入fastrunner容器内部

docker exec -it fastrunner /bin/sh

9.Django生成数据库脚本

# 指定--settings=FasterRunner.settings.pro文件来生成fastrunner fastuser djcelery数据库脚本
python3 manage.py makemigrations --settings=FasterRunner.settings.pro fastrunner fastuser djcelery

10.Django执行数据库脚本

# migrate for database
python3 manage.py migrate --settings=FasterRunner.settings.pro fastrunner
python3 manage.py migrate --settings=FasterRunner.settings.pro fastuser
python3 manage.py migrate --settings=FasterRunner.settings.pro djcelery

11.Docker相关操作

# 启动Docker
sudo systemctl start docker

# 查看日志fastrunner容器日志
docker container logs fastrunner

# 正在运行的容器
docker container ls

# 删除容器fastrunner
 docker container rm fastrunner
 
# 停止容器fastrunner
 docker container stop fastrunner

# 启动容器fastrunner
 docker container start fastrunner 

# Docker镜像
docker images

普通模式部署

anotherfasterrunner's People

Contributors

lihuacai168 avatar xglh avatar yinquanwang avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.