【Linux】部署 flask

news2024/9/27 5:29:29

文章目录

  • 一、安装Python3环境
  • 二、将本地开发环境的依赖项目生成清单文件
  • 三、创建虚拟环境
    • 启用虚拟环境
    • 退出虚拟环境
  • 四、添加自定义系统服务(很重要)

一、安装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 

python -V #将会看到python2的版本

5.创建pip软连接

ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
pip3 -V #将会看到pip3的版本
pip3 install --upgrade pip  更新pip3

二、将本地开发环境的依赖项目生成清单文件

1.在的开发环境中,cmd来到项目的目录下执行:

 pip3 freeze >requirements.txt

certifi2018.4.16
chardet
3.0.4
idna2.7
requests
2.19.1
urllib3==1.23

2.将生成后的文件上传到linux服务器
3.将Python项目上传到服务器
在这里插入图片描述

三、创建虚拟环境

切换到pip3所在的目录

cd  /usr/local/python3/bin

安装虚拟环境

pip3 install virtualenv

这里如果报错证明你的pip3版本过低使用国内镜像进行更新

pip3 install --upgrade pip -i https://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com

创建虚拟环境 ENV

virtualenv ENV

这里会显示无命令,是因为路径问题

vi /etc/profile

进入编辑模式,在底部加入一行代码

PATH=$PATH:/usr/local/python3/bin

启用虚拟环境

cd ENV 切换到虚拟环境所在的目录
source ./bin/activate 启用虚拟环境
pip3 install -r requirements.txt 安装依赖清单里的库

退出虚拟环境

deactivate

四、添加自定义系统服务(很重要)

这样的命令在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文件的全路径也是可以的。

systemctl enable robot  启用自定义系统服务

systemctl start robot  启动服务

ps aux|grep robot   可以查看进程,确认一下服务是否启动

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2169000.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

案例研究丨国控星鲨利用DataEase释放数据潜能,重塑业务视野

国药控股星鲨制药(厦门)有限公司(以下简称为国控星鲨)始创于1952年,前身为厦门鱼肝油厂,距今已经有70余年历史,是国家商务部认定的“中华老字号”企业。2011年,国药控股与厦门轻工集…

C# C++ 笔记

第一阶段知识总结 lunix系统操作 1、基础命令 (1)cd cd /[目录名] 打开指定文件目录 cd .. 返回上一级目录 cd - 返回并显示上一次目录 cd ~ 切换到当前用户的家目录 (2)pwd pwd 查看当前所在目录路径 pwd -L 打印当前物理…

从“可用”到“好用”,百度智能云如何做大模型的“超级工厂”?

如果说,过去两三年大模型处于造锤子阶段,那么今年,更多的则是考验钉钉子的能力,面对各类业务场景大模型是否能够有的放矢、一击必中,为千行百业深度赋能。 当前市场上,已经有200多把这样的锤子在疯狂找钉子…

从零开始使用树莓派debian系统使用opencv4.10.0进行人脸识别(保姆级教程)

一、总体架构 本文主要是使用树莓派自带的csi摄像头,搭配上opencv4.10.0进行物体的识别。本文使用的环境是python3.7.3,环境不一样有可能安装的opencv的过程也会很不一样,但是python的环境我们可以自己自行安装。 二、树莓派系统的安装 本文…

江协科技STM32学习- P19 TIM编码器接口

🚀write in front🚀 🔎大家好,我是黄桃罐头,希望你看完之后,能对你有所帮助,不足请指正!共同学习交流 🎁欢迎各位→点赞👍 收藏⭐️ 留言📝​…

亲身体验Llama 3.1:开源模型的部署与应用之旅

文章目录 1 Llama 3.1系列的诞生2 大型模型的未来发展3 使用教程4 Llama 3.1在客户服务中的运用 1 Llama 3.1系列的诞生 在人工智能的浪潮中,大型语言模型(LLM)正以其独特的魅力和潜力,成为深度学习领域的一颗耀眼明星。 这些模…

计算机毕业设计Hadoop+Spark知识图谱体育赛事推荐系统 体育赛事热度预测系统 体育赛事数据分析 体育赛事可视化 体育赛事大数据 大数据毕业设计

《HadoopSpark知识图谱体育赛事推荐系统》开题报告 一、研究背景及意义 随着互联网技术的迅猛发展和大数据时代的到来,体育赛事数据的数量呈爆炸式增长。用户面对海量的体育赛事信息,常常感到信息过载,难以快速找到感兴趣的赛事内容。如何高…

锐捷—NAT地址映射+IPsec隧道

任务目标 在出口路由器R3上将R5私网地址1对1映射的公网地址与R1建立IPsec隧道,使得R4在访问R5的映射公网地址时,可以进行IPsec隧道的转发 要求: 1、R4和R5可通过NAT转换正常访问互联网地址(R2的lo0) 2、R5的私网地…

云手机群控怎么用?有什么优势?

群控系统,顾名思义,是用于批量控制多部手机的工具,能够通过计算机或客户端同时管理多台设备。借助群控系统,用户可以在电脑上操作多部手机,模拟真实操作场景,从而大幅提升工作效率,并有效控制管…

calibre-web默认左上角字体修改

calibre-web默认左上角字体修改 如图: 有些奇异,如果想变成正常的常规字体,需要修改: cps\static\css\style.css 下的代码: 默认是GrandHotel-Regular: 换成其他字体即可。其他字体在 calibre-web\cps\s…

图像处理04

图像处理 问题:把不规则的图片按照参考图摆放 步骤: 1. 用ORB找关键点 2. 关键点匹配 3. 根据上一步匹配的关键点得出单应性矩阵 4. 根据单应性矩阵对不规则进行透视变换 import cv2 import numpy as np import matplotlib.pyplot as pltimgl cv2.imrea…

微信小程序 - 最新详细安装使用 Vant weapp UI 框架环境搭建详细教程

前言 自从 2024 年开始,小程序做了很多改变和升级, 导致网上很多搭建教程文章的教程失效了,本文来做最新的教程。 第一步 为了更贴合新手,我这里创建了一个纯净无任何业务代码的小程序项目。

【AI基础】pytorch lightning 基础学习

传统pytorch工作流是首先定义模型框架,然后写训练和验证,测试循环代码。训练,验证,测试代码写起来比较繁琐。这里介绍使用pytorch lightning 部署模型,加速模型训练和验证,记录。 准备工作 1 安装pytorch…

铨顺宏科技携RTLS+RFID技术亮相工博会!

中国国际工业博览会盛大开幕! 铨顺宏科技展亮点速递 铨顺宏科技展位号:F117 中国国际博览会今日开幕,铨顺宏科技携创新产品亮相,吸引众多参观者。 我们珍视此次国际盛会,将全力以赴确保最佳体验。 工作人员热情解答…

实时数字人DH_live使用案例

参看: https://github.com/kleinlee/DH_live ubuntu 测试 apt install ffmpeg 下载安装: git clone https://github.com/kleinlee/DH_live.git cd DH_liveconda create -n dh_live python=3.12 conda activate dh_live pip install -r requirements.txt pip install torch -…

E. Alternating String

E. Alternating String 这道题就是前缀和的变化, 现在做起来比较简单, 打这场的时候差了点时间就做出来了 代码 #include <bits/stdc.h> #define int long long using namespace std;const int N 200010;int od[N][30], ev[N][30]; int n;void init() {for(int i 0; …

【Linux篇】常用命令及操作技巧(进阶篇 - 上)

&#x1f30f;个人博客主页&#xff1a;意疏-CSDN博客 文章目录&#xff1a; Linux常用命令以及操作技巧&#xff08;进阶&#xff09;前言一、远程管理常用命令1、关机/重启shutdown命令 二、查看或配置网卡信息2、网卡和IP地址网卡IP地址ifconfig命令ping命令 三、SSH基础1.…

Dart中FFI学习

Flutter中FFI学习 Dart FFI编程概述NativeType&#xff08;类型映射&#xff09;Window安装GCCDart调用C的函数数组字符串结构体 Dart FFI编程 概述 dart:ffi库可以使用Dart语言调用本地C语言API ,并读取、写入、分配和删除本地内存。FFI是指外部函数接口&#xff08;Foregin…

JS设计模式之组合模式:打造灵活高效的对象层次结构

引言 当我们构建复杂的应用程序时&#xff0c;经常会遇到处理对象层次结构的情况。这些层次结构通常是树形结构&#xff0c;由组合节点和叶子节点组成。在这样的情况下&#xff0c;JavaScript 设计模式之一的组合模式就能派上用场。 组合模式是一种结构型设计模式&#xff0c…

Gitlab学习(006 gitlab操作)

尚硅谷2024最新Git企业实战教程&#xff0c;全方位学习git与gitlab 总时长 5:42:00 共40P 此文章包含第21p-第24p的内容 文章目录 git登录修改root密码 设置修改语言取消相对时间勾选 团队管理创建用户创建一个管理员登录管理员账号创建一个普通用户登录普通用户账号 群组管理…