电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

如何把python項目部署到linux服務器

瀏覽:5日期:2022-07-13 09:31:40

最近用Python寫了個外掛,需要部署到Linux環境的服務器上,由于之前本地開發時使用virtualenv,使用這個虛擬環境有個好處是項目中依賴的庫不會是全局的,只在當前項目的目錄下有效,因為我是Mac系統,virtualenv環境下的庫文件和linux上所需要的庫不通用,所以不能簡單的將整個env拷貝到服務器運行,需要做一些額外的工作。

一般每個不同的項目都會依賴各自的庫,有些庫的版本不一樣會引起沖突,為了解決這個問題,需要使用虛擬環境,Python可以在每個項目目錄下創建各自的虛擬環境,項目所依賴的包就在環境目錄下,這樣避免了庫版本的沖突,也方便相同操作系統間可以快速的拷貝項目運行。

我使用的是Python3編寫的項目,CentOS 7的服務器上只有Python2,所以需要先安裝一下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.xzcd Python-3.6.2./configure prefix=/usr/local/python3make && make install

4.安裝完畢,創建軟連接

ln -s /usr/local/python3/bin/python3 /usr/bin/python# 執行命令python -V #將會看到python3的版本# 執行命令python2 -V #將會看到python2的版本

5.后續工作,由于執行CentOS的yum命令需要使用自帶的python2的版本,所以需要做兩處修改

vim /usr/bin/yumvim /usr/libexec/urlgrabber-ext-down#將 這兩個文件的 #! /usr/bin/python修改為 #! /usr/bin/python2

第二步:將本地開發環境的依賴項目生成清單文件1.在本地的開發環境中,env下執行:

pip3 freeze >requirements.txt

清單文件將會生成在當前項目目錄下,內容如下所示

certifi==2018.4.16chardet==3.0.4idna==2.7requests==2.19.1urllib3==1.23

將生成后的文件上傳到linux服務器

2.將Python項目上傳到服務器

第三步:在linux服務器上為項目創建虛擬環境,并安裝項目所需的依賴1.切換到pip3所在的目錄 /usr/local/python/bin,執行以下命令

# 安裝虛擬環境pip3 install virtualenv

# 創建虛擬環境 ENVvirtualenv 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=robotAfter=network.target[Service]Type=forkingExecStart=/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

完畢!

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 无尘烘箱_洁净烤箱_真空无氧烤箱_半导体烤箱_电子防潮柜-深圳市怡和兴机电 | 红立方品牌应急包/急救包加盟,小成本好项目代理_应急/消防/户外用品加盟_应急好项目加盟_新奇特项目招商 - 中红方宁(北京) 供应链有限公司 | 春腾云财 - 为企业提供专业财税咨询、代理记账服务 | 防爆电机生产厂家,YBK3电动机,YBX3系列防爆电机,YBX4节防爆电机--河南省南洋防爆电机有限公司 | 今日娱乐圈——影视剧集_八卦娱乐_明星八卦_最新娱乐八卦新闻 | 定硫仪,量热仪,工业分析仪,马弗炉,煤炭化验设备厂家,煤质化验仪器,焦炭化验设备鹤壁大德煤质工业分析仪,氟氯测定仪 | 污水处理设备-海普欧环保集团有限公司 | 高压微雾加湿器_工业加湿器_温室喷雾-昌润空气净化设备 | 泰来华顿液氮罐,美国MVE液氮罐,自增压液氮罐,定制液氮生物容器,进口杜瓦瓶-上海京灿精密机械有限公司 | 卡诺亚轻高定官网_卧室系统_整家定制_定制家居_高端定制_全屋定制加盟_定制家具加盟_定制衣柜加盟 | 水性绝缘漆_凡立水_绝缘漆树脂_环保绝缘漆-深圳维特利环保材料有限公司 | 高压微雾加湿器_工业加湿器_温室喷雾-昌润空气净化设备 | 氧化锆陶瓷_氧化锆陶瓷加工_氧化锆陶瓷生产厂家-康柏工业陶瓷有限公司 | TPE_TPE热塑性弹性体_TPE原料价格_TPE材料厂家-惠州市中塑王塑胶制品公司- 中塑王塑胶制品有限公司 | 消电检公司,消电检价格,北京消电检报告-北京设施检测公司-亿杰(北京)消防工程有限公司 | 便携式表面粗糙度仪-彩屏硬度计-分体式粗糙度仪-北京凯达科仪科技有限公司 | 【德信自动化】点胶机_全自动点胶机_自动点胶机厂家_塑料热压机_自动螺丝机-深圳市德信自动化设备有限公司 | 电磁辐射仪-电磁辐射检测仪-pm2.5检测仪-多功能射线检测仪-上海何亦仪器仪表有限公司 | 房间温控器|LonWorks|海思 | 昆山新莱洁净应用材料股份有限公司-卫生级蝶阀,无菌取样阀,不锈钢隔膜阀,换向阀,离心泵 | 焊锡丝|焊锡条|无铅锡条|无铅锡丝|无铅焊锡线|低温锡膏-深圳市川崎锡业科技有限公司 | 合肥仿石砖_合肥pc砖厂家_合肥PC仿石砖_安徽旭坤建材有限公司 | 广州冷却塔维修厂家_冷却塔修理_凉水塔风机电机填料抢修-广东康明节能空调有限公司 | 亳州网络公司 - 亳州网站制作 - 亳州网站建设 - 亳州易天科技 | 氢氧化钙设备_厂家-淄博工贸有限公司 | 北京模型公司-军事模型-工业模型制作-北京百艺模型沙盘公司 | 光伏家 - 太阳能光伏发电_分布式光伏发电_太阳能光伏网 | 合肥触摸一体机_触摸查询机厂家_合肥拼接屏-安徽迅博智能科技 | 机床导轨_导轨板_滚轮导轨-上海旻佑精密机械有限公司 | 柔性测斜仪_滑动测斜仪-广州杰芯科技有限公司 | 紫外线老化试验箱_uv紫外线老化试验箱价格|型号|厂家-正航仪器设备 | lcd条形屏-液晶长条屏-户外广告屏-条形智能显示屏-深圳市条形智能电子有限公司 | 高清视频编码器,4K音视频编解码器,直播编码器,流媒体服务器,深圳海威视讯技术有限公司 | 杭州月嫂技术培训服务公司-催乳师培训中心报名费用-产后康复师培训机构-杭州优贝姆健康管理有限公司 | 山东聚盛新型材料有限公司-纳米防腐隔热彩铝板和纳米防腐隔热板以及钛锡板、PVDF氟膜板供应商 | 阿里巴巴诚信通温州、台州、宁波、嘉兴授权渠道商-浙江联欣科技提供阿里会员办理 | 小青瓦丨古建筑瓦丨青瓦厂家-宜兴市徽派古典建筑材料有限公司 | 标准品网_标准品信息网_【中检计量】 | 多功能干燥机,过滤洗涤干燥三合一设备-无锡市张华医药设备有限公司 | 交联度测试仪-湿漏电流测试仪-双85恒温恒湿试验箱-常州市科迈实验仪器有限公司 | 快速门厂家-快速卷帘门-工业快速门-硬质快速门-西朗门业 |