文章目录
一、安装Python3环境
1.首先安装编译环境(后续需要从python官网获取Python3的源码自己编译python
bash
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make
2.从官网下载python3的源码
bash
wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tar.xz
3.依次执行 解压>进入解压后的目录>编译安装
bash
tar -xvJf Python-3.6.2.tar.xz
cd Python-3.6.2
./configure prefix=/usr/local/python3
make && make install
4.安装完毕,创建python3软连接
bash
ln -s /usr/local/python3/bin/python3 /usr/bin/python3
执行命令
bash
python3 -V
python -V #将会看到python2的版本
5.创建pip软连接
bash
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
pip3 -V #将会看到pip3的版本
pip3 install --upgrade pip 更新pip3
二、将本地开发环境的依赖项目生成清单文件
1.在的开发环境中,cmd来到项目
的目录下执行:
bash
pip3 freeze >requirements.txt
certifi2018.4.16
chardet3.0.4idna2.7
requests2.19.1urllib3==1.23
2.将生成后的文件上传到linux服务器
3.将Python项目上传到服务器
三、创建虚拟环境
切换到pip3所在的目录
bash
cd /usr/local/python3/bin
安装虚拟环境
bash
pip3 install virtualenv
这里如果报错证明你的pip3版本过低使用国内镜像进行更新
bash
pip3 install --upgrade pip -i https://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
创建虚拟环境 ENV
bash
virtualenv ENV
这里会显示无命令,是因为路径问题
bash
vi /etc/profile
进入编辑模式,在底部加入一行代码
bash
PATH=$PATH:/usr/local/python3/bin
启用虚拟环境
bash
cd ENV 切换到虚拟环境所在的目录
source ./bin/activate 启用虚拟环境
pip3 install -r requirements.txt 安装依赖清单里的库
退出虚拟环境
bash
deactivate
四、添加自定义系统服务(很重要)
这样的命令在ssh终端退出后,python进程也会被杀掉
bash
python xxx.py &
需要创建一个自定义的系统服务,来保证python程序能够在后台运行。
1.创建系统服务
bash
vim /usr/lib/systemd/system/robot.service
内容如下:
[Unit]
Description=robot
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/python3/bin/ENV/bin/python
/usr/local/python3/bin/ENV/p3.py &
PrivateTmp=true
[Install]
WantedBy=multi-user.target
ExecStart为服务启动时执行的命令,不能用相对路径, 一定要全路径。
这里也可以将命令写到任意的.sh文件中,这里写.sh文件的全路径也是可以的。
bash
systemctl enable robot 启用自定义系统服务
systemctl start robot 启动服务
ps aux|grep robot 可以查看进程,确认一下服务是否启动