把Flask项目部署到Linux服务器
2021/4/21 7:25:29
本文主要是介绍把Flask项目部署到Linux服务器,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
软件:
第一步:安装Python3环境
1.首先安装编译环境(后续需要从python官网获取Python3的源码自己编译python
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make
2.从官网下载python3的源码
wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tar.xz
3.依次执行 解压>进入解压后的目录>编译安装
tar -xvJf Python-3.6.2.tar.xz cd Python-3.6.2 ./configure prefix=/usr/local/python3 make && make install
4.安装完毕,创建python3软连接
ln -s /usr/local/python3/bin/python3 /usr/bin/python3 # 执行命令 python3 -V #将会看到python3的版本 # 执行命令 python -V #将会看到python2的版本
5.创建pip软连接
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3 # 执行命令 pip3 -V #将会看到pip3的版本 # 更新pip3 pip3 install --upgrade pip
第二步:将本地开发环境的依赖项目生成清单文件
1.在本地的开发环境中,env下执行:
pip3 freeze >requirements.txt
清单文件将会生成在当前项目目录下,内容如下所示
certifi==2018.4.16 chardet==3.0.4 idna==2.7 requests==2.19.1 urllib3==1.23 |
将生成后的文件上传到linux服务器
2.将Python项目上传到服务器
第三步:在linux服务器上为项目创建虚拟环境,并安装项目所需的依赖
1.切换到pip3所在的目录 /usr/local/python/bin,执行以下命令
# 安装虚拟环境 pip3 install virtualenv # 创建虚拟环境 ENV virtualenv ENV # 切换到虚拟环境所在的目录 cd ENV # 启用虚拟环境 source ./bin/activate # 安装依赖清单里的库 pip3 install -r requirements.txt # 列出当前虚拟环境所安装的依赖库 pip3 list |
第四步:添加自定义系统服务(很重要)
# 这样的命令在ssh终端退出后,python进程也会被杀掉 python xxx.py & |
需要创建一个自定义的系统服务,来保证python程序能够在后台运行。
1.创建系统服务
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文件的全路径也是可以的。
2.启用自定义系统服务
systemctl enable robot |
3.启动服务
systemctl start robot |
可以查看进程,确认一下服务是否启动
ps aux|grep robot |
完毕!
这篇关于把Flask项目部署到Linux服务器的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23linux 系统宝塔查看网站访问的命令是什么?-icode9专业技术文章分享
- 2024-11-12如何创建可引导的 ESXi USB 安装介质 (macOS, Linux, Windows)
- 2024-11-08linux的 vi编辑器中搜索关键字有哪些常用的命令和技巧?-icode9专业技术文章分享
- 2024-11-08在 Linux 的 vi 或 vim 编辑器中什么命令可以直接跳到文件的结尾?-icode9专业技术文章分享
- 2024-10-22原生鸿蒙操作系统HarmonyOS NEXT(HarmonyOS 5)正式发布
- 2024-10-18操作系统入门教程:新手必看的基本操作指南
- 2024-10-18初学者必看:操作系统入门全攻略
- 2024-10-17操作系统入门教程:轻松掌握操作系统基础知识
- 2024-09-11Linux部署Scrapy学习:入门级指南
- 2024-09-11Linux部署Scrapy:入门级指南