您当前的位置: 首页 >  sql

孑渡

暂无认证

  • 1浏览

    0关注

    178博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

软件测试:linux平台部署nginx+mysql+web应用

孑渡 发布时间:2021-04-23 21:27:20 ,浏览量:1

- 第一步:购买腾讯云服务器 由于笔者电脑的双系统ubuntu网卡配置没有装好,VMWare的虚拟机是kali的,因此选择了租用腾讯云的服务器。这一步的可替代性很强,只要选择一个linux平台即可。需要注意的是腾讯云服务器是CentOS的,因此在终端命令上会有一定的区别。在这里插入图片描述

- 第二步:云服务器端环境配置

  • 利用终端ssh命令链接云服务器 由于笔者是win10系统,cmd使用ssh命令需要额外下载,因此直接选择了git bash来连接。使用命令为: bash ssh root@82.156.15.56 结果如下显示: 在这里插入图片描述

  • 创建虚拟环境 考虑到之后可能部署额外项目,因此需要单独给该项目准备一个独立的虚拟环境。本次部署项目为MrDoc,因此新建同名项目文件夹后在该目录下新建虚拟环境。(需要注意,腾讯云的服务器提供了python2和python3,在创建环境的时候最好明确地标注) virtualenv --no-site-packages --python=python3 venv 创建完成之后会在venv目录下观察到以下文件: 在这里插入图片描述

  • 安装mysql,nginix,uwsgi 进入虚拟环境后开始安装需要的程序。首先是mysql:

    wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm 
    rpm -ivh mysql-community-release-el7-5.noarch.rpm
    sudo yum install mysql-server
    

    安装完数据库之后我们需要修改MySQL的默认配置文件(主要是修改密码)

    cat /var/log/mysqld.log | grep password
    mysql -uroot -p 
    ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '********'
    

    完成mysql的安装配置之后,用类似的命令安装配置nginx和uwsgi:

    wget -c https://nginx.org/download/nginx-1.12.0.tar.gz
    tar -zxvf nginx-1.12.0.tar.gz
    
    pip3 install uWSGI
    

- 第三步:项目部署

  • 拉取MrDoc源代码
git clone https://gitee.com/zmister/MrDoc.git
  • 配置MrDoc环境 在之前建立的venv环境中安装MrDoc所需要的包
pip3 install -r ./MrDoc/requirements.txt
  • 运行数据库文件 生成数据库迁移:
python3 manage.py makemigrations

执行数据库迁移

python3 manage.py migrate
  • 配置部署文件 创建MrDoc的同级目录deploy,新建mrdoc_uwsgi.ini以及uwsgi_params,按照配置文档要求写入。 在nginx/nginx.conf文件中,写入MrDoc的配置。

- 第四步:线上发布 目录转到nginx/sbin,执行nginx文件即可访问。 如果修改了nginx的配置文件,则需要执行:

./nginx -s reload

即可完成nginx的热装载。 - 遇到的问题 1.manage.py运行存在问题 出错原因为MrDoc默认使用的是sqllite,因此除了配置文件以外,其源代码中使用的也是sqllite的库函数,因此需要在manage.py文件中加入

import pymysql
pymysql.install_as_MySQLdb()

从而解决问题。 2.配置文件无法正常执行 原因是原MrDoc中的配置文件与笔者部署位置不同,在nginx.conf中配置的话需要对其中的location路径进行修改。

关注
打赏
1663211900
查看更多评论
立即登录/注册

微信扫码登录

0.0378s