本篇讲述如何将web服务接口部署到linux安装应用中
本次使用的是华为云 1vCPUs | 2GiB CentOS 8.2 64bit
趁着双十一的新人活动购买的,价格还是挺划算的
配置如下:
连接
ssh root@弹性公网ip地址
点击接收并保存——>输入密码
连接成功
安装python压缩包tgz
从根目录切换到opt文件夹下
方法1: 速度慢!
wget https://www.python.org/ftp/python/3.10.1/Python-3.10.1.tgz
方法2:速度快
去到python官网中,下载Python-3.10.1.tgz压缩包
使用Xftp(xshell绿色图标)去传输taz文件到/opt目录下
使用命令去验证是否加入成功
ll #查看/opt文件下是否存在tgz文件
rm -rf Python-3.10.1.tgz # 补充:linux删除文件命令
安装系统依赖包
安装在opt目录下
sudo dnf install wget yum-utils make gcc
openssl-devel bzip2-devel libffi-devel zlibdevel -y
linux查看当前路径方法(补充)
pwd # linux查看当前路径方法(补充)
解压压缩包python
/opt文件夹下
tar xzf Python-3.10.1.tgz
安装:再进入解压好的文件目录中
进入/opt/Python-3.10.1
cd Python-3.10.1
sudo ./configure --enable-optimizations --prefix=/usr/local/python3.10
sudo make install
配置python环境变量
切换到刚刚下载python的目录
cd /usr/local/python3.10
当我们查看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
配置PyPI源文件
切换到根目录 (直接输入cd)
cd
mkdir .pip
cd .pip/
vim pip.conf
打开文件后 输入i进入编辑模式,复制如下代码,然后点击Esc,在:wq! 退出
[global]
index-url =
https://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=mirrors.aliyun.com
本次是在云服务器中操作
安装
pip install virtualenvwrapper
配置python环境变量
切换到根目录(cd)
vim ~/.bash_profile
# 再最后一行中添加如下命令
export PATH
export WORKON_HOME=~/python_env
export VIRTUALENVWRAPPER_PYTHON=/usr/local/bin/python
执行命令
. ~/.bash_profile
查找virtualenvwrapper.sh 脚本的路径
[root@hecs-95797 ~]# find / -name virtualenvwrapper.sh
/usr/local/python3.10/bin/virtualenvwrapper.sh
配置虚拟环境生效
[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
进入python_env目录下 创建虚拟环境
进入虚拟环境命令:
source /usr/local/python3.10/bin/tornado_env/bin/activate
退出虚拟环境::deactivate
安装mysql
/usr/local/pyth💋3.10/bin/tornado_env
[root@hecs-95797 tornado_env]# dnf install @mysql -y
开机启动
systemctl enable --now mysqld
启动mysql服务
添加密码及安全设置
配置远程登录
需要去云服务器开放3306端口
mysql -uroot -p
use mysql;
update user set host='%' where user ='root';
flush privileges;# 刷新
云服务器中配置
先进入到虚拟环境的文件夹中
cd /usr/local/python3.10/bin/tornado_env
安装redis命令
dnf install redis -y
开启redis与开机启动
systemctl start redis
systemctl enable redis
测试
systemctl status redis
进入redis
redis-cli
测试添加数据
tornado也可以作为服务器使用,但是多使用一个nginx的原因是因为,nginx有一个负载均衡的功能
云服务器中配置
先进入到虚拟环境的文件夹中
cd /usr/local/python3.10/bin/tornado_env
安装
sudo dnf install nginx -y
开机启动与开启服务
sudo systemctl enable nginx
sudo systemctl start nginx
开启80端口,并且关闭云服务器防火墙
完成上述操作后
virtualenv -p /usr/local/bin/python forum_env
进入虚拟环境
source /opt/sxt_forum_server/forum_env/bin/activate
回到VSCode中的虚拟环境,添加如下命令
把所有的文件都保存到一个txt文件中
再把这个requirements.txt放入虚拟机中
下载txt文件夹下所有的安装包命令
(forum_env) [root@hecs-95797 sxt_forum_server]# pip install -r requirements.txt
运行manager.py (因为里面有生成表结构的代码)
python manager.py
在VSCode中运行sql语句添加数据(记得VSCode中修改数据库的路径)
启动项目
同样是运行manager.py 但是要修改里面的内容,把生成表的改成运行项目的
访问
记得开启8000端口
访问114.115.133.3:8000