• 16.项目部署


    1.概述

    本篇讲述如何将web服务接口部署到linux安装应用中

    2. python环境安装

    2.1购买一台云服务器

    本次使用的是华为云 1vCPUs | 2GiB CentOS 8.2 64bit
    趁着双十一的新人活动购买的,价格还是挺划算的

    2.2 切换操作系统

    配置如下:
    在这里插入图片描述

    2.3 使用XShell连接云服务器

    连接

    ssh root@弹性公网ip地址
    
    • 1

    点击接收并保存——>输入密码
    连接成功

    2.4 python环境安装

    安装python压缩包tgz
    从根目录切换到opt文件夹下
    方法1: 速度慢!

    wget https://www.python.org/ftp/python/3.10.1/Python-3.10.1.tgz
    
    • 1

    方法2:速度快
    去到python官网中,下载Python-3.10.1.tgz压缩包
    使用Xftp(xshell绿色图标)去传输taz文件到/opt目录下
    使用命令去验证是否加入成功

    ll #查看/opt文件下是否存在tgz文件
    
    • 1
    rm -rf Python-3.10.1.tgz # 补充:linux删除文件命令
    
    • 1

    在这里插入图片描述

    安装系统依赖包
    安装在opt目录下

    sudo dnf install wget yum-utils make gcc
    openssl-devel bzip2-devel libffi-devel zlibdevel -y
    
    • 1
    • 2

    linux查看当前路径方法(补充)

    pwd  # linux查看当前路径方法(补充)
    
    • 1

    解压压缩包python
    /opt文件夹下

    tar xzf Python-3.10.1.tgz
    
    • 1

    安装:再进入解压好的文件目录中
    进入/opt/Python-3.10.1

    cd Python-3.10.1
    sudo ./configure --enable-optimizations --prefix=/usr/local/python3.10
    sudo make install
    
    • 1
    • 2
    • 3

    在这里插入图片描述

    配置python环境变量

    切换到刚刚下载python的目录

    cd /usr/local/python3.10
    
    • 1

    在这里插入图片描述
    当我们查看python使用命令python -V时,服务器无法识别,这里就需要配置环境变量
    两种方法:

    # 让系统识别python3.10 修改~/.bash_profile
    PATH=/usr/local/python3.10
    . ~/.bash_profile
    # ---------------------------------------
    ln /usr/local/python3.10/bin/python3.10
    /usr/local/bin/python
    ln /usr/local/python3.10/bin/pip3.10
    /usr/local/bin/pip
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    在这里插入图片描述

    配置PyPI源文件
    切换到根目录 (直接输入cd)

    cd
    mkdir .pip
    cd .pip/
    vim pip.conf
    
    • 1
    • 2
    • 3
    • 4

    打开文件后 输入i进入编辑模式,复制如下代码,然后点击Esc,在:wq! 退出

    [global]
    index-url =
    https://mirrors.aliyun.com/pypi/simple/
    [install]
    trusted-host=mirrors.aliyun.com
    
    • 1
    • 2
    • 3
    • 4
    • 5

    3.linux虚拟环境的安装方法

    本次是在云服务器中操作
    安装

    pip install virtualenvwrapper
    
    • 1

    配置python环境变量
    切换到根目录(cd)

    vim ~/.bash_profile
    # 再最后一行中添加如下命令
    export PATH
    export WORKON_HOME=~/python_env
    export VIRTUALENVWRAPPER_PYTHON=/usr/local/bin/python
    
    • 1
    • 2
    • 3
    • 4
    • 5

    执行命令

    . ~/.bash_profile
    
    • 1

    查找virtualenvwrapper.sh 脚本的路径

    [root@hecs-95797 ~]# find / -name virtualenvwrapper.sh
    /usr/local/python3.10/bin/virtualenvwrapper.sh
    
    • 1
    • 2

    配置虚拟环境生效

    [root@hecs-95797 ~]# . /usr/local/python3.10/bin/virtualenvwrapper.sh
    virtualenvwrapper.user_scripts creating /root/python_env/premkproject
    virtualenvwrapper.user_scripts creating /root/python_env/postmkproject
    virtualenvwrapper.user_scripts creating /root/python_env/initialize
    virtualenvwrapper.user_scripts creating /root/python_env/premkvirtualenv
    virtualenvwrapper.user_scripts creating /root/python_env/postmkvirtualenv
    virtualenvwrapper.user_scripts creating /root/python_env/prermvirtualenv
    virtualenvwrapper.user_scripts creating /root/python_env/postrmvirtualenv
    virtualenvwrapper.user_scripts creating /root/python_env/predeactivate
    virtualenvwrapper.user_scripts creating /root/python_env/postdeactivate
    virtualenvwrapper.user_scripts creating /root/python_env/preactivate
    virtualenvwrapper.user_scripts creating /root/python_env/postactivate
    virtualenvwrapper.user_scripts creating /root/python_env/get_env_details
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    进入python_env目录下 创建虚拟环境
    在这里插入图片描述
    进入虚拟环境命令:

    source /usr/local/python3.10/bin/tornado_env/bin/activate
    
    • 1

    4.linux中mysql数据库安装

    退出虚拟环境::deactivate
    安装mysql
    /usr/local/pyth💋3.10/bin/tornado_env

    [root@hecs-95797 tornado_env]# dnf install @mysql -y
    
    • 1

    开机启动

    systemctl enable --now mysqld
    
    • 1

    启动mysql服务
    在这里插入图片描述
    添加密码及安全设置
    在这里插入图片描述
    在这里插入图片描述
    配置远程登录
    需要去云服务器开放3306端口

    mysql -uroot -p
    use mysql;
    update user set host='%' where user ='root';
    flush privileges;# 刷新
    
    • 1
    • 2
    • 3
    • 4

    5.linux中redis安装与配置

    云服务器中配置
    先进入到虚拟环境的文件夹中

    cd /usr/local/python3.10/bin/tornado_env
    
    • 1

    安装redis命令

    dnf install redis -y
    
    • 1

    开启redis与开机启动

    systemctl start redis
    systemctl enable redis
    
    • 1
    • 2

    测试

    systemctl status redis
    
    • 1

    进入redis

    redis-cli
    
    • 1

    测试添加数据
    在这里插入图片描述

    6.linux中nginx安装

    tornado也可以作为服务器使用,但是多使用一个nginx的原因是因为,nginx有一个负载均衡的功能
    云服务器中配置
    先进入到虚拟环境的文件夹中

    cd /usr/local/python3.10/bin/tornado_env
    
    • 1

    安装

    sudo dnf install nginx -y
    
    • 1

    开机启动与开启服务

    sudo systemctl enable nginx
    sudo systemctl start nginx
    
    • 1
    • 2

    开启80端口,并且关闭云服务器防火墙
    在这里插入图片描述

    7.tornado的项目部署

    完成上述操作后

    1. 先把代码中的redis和mysql的地址全部改为localhost
    2. 把tornado文件使用XShell加入到虚拟环境的文件夹中(进入 /opt)
    3. 加入后,在tornado文件的根目录下创建虚拟环境
    virtualenv -p /usr/local/bin/python forum_env
    
    • 1

    在这里插入图片描述
    进入虚拟环境

    source /opt/sxt_forum_server/forum_env/bin/activate
    
    • 1

    回到VSCode中的虚拟环境,添加如下命令
    把所有的文件都保存到一个txt文件中
    在这里插入图片描述
    在这里插入图片描述
    再把这个requirements.txt放入虚拟机中
    下载txt文件夹下所有的安装包命令

    (forum_env) [root@hecs-95797 sxt_forum_server]# pip install -r requirements.txt
    
    • 1

    运行manager.py (因为里面有生成表结构的代码)

    python manager.py
    
    • 1

    在这里插入图片描述
    在VSCode中运行sql语句添加数据(记得VSCode中修改数据库的路径)
    启动项目
    同样是运行manager.py 但是要修改里面的内容,把生成表的改成运行项目的
    访问
    记得开启8000端口
    访问114.115.133.3:8000

    8.nginx结合部署

  • 相关阅读:
    Unity的粒子总是丢材质
    C#创历史成为2023年度编程语言!!!
    Word 表格单元格无法垂直居中
    分享一个JS对象隐式转换的问题
    【Cocos creator】Cocos creator介绍和入门
    在Linux 下制作启动盘以及dd命令使用
    【如何看待Unity收费】对标中小公司的待就业者的该如何做
    Java设计模式之外观模式
    三极管集电极电阻的作用
    UE4 RTS 框选功能实现
  • 原文地址:https://blog.csdn.net/m0_63953077/article/details/127830086