保姆级python项目离线部署服务器教程只需这一篇就够了(建议收藏)

简介: 这篇文章提供了详尽的Python项目在离线Linux(CentOS)服务器上的部署教程。作者首先介绍了环境背景,强调了无网络环境和使用有网络的CentOS虚拟机准备安装包的重要性。教程分为两部分:外网环境搭建和内网离线安装。在外网环境中,包括下载Python 3.9.0安装包、传输至服务器、安装依赖包,并使用pip3下载项目所需依赖。内网安装则涉及依赖包的复制和Python环境的同样步骤。最后,作者分享了运行项目的命令,并总结了离线安装的整个流程,提醒读者注意可能出现的问题。

保姆级python项目离线部署服务器教程只需这一篇就够了

这篇文章主要记录我在湖南长沙国网电科院一次python项目部署,由于我主要是做Java后端开发对python确实不太了解因此记录下这次教程

环境介绍

​ 服务器为linux的centos系统具体7还是8我不太清楚,全程为没有网络环境,所以环境全部需要离线安装.这里不我建议使用Anaconda虚拟环境进行安装,因为是离线环境.最好是能够准备一台有网络的centos虚拟机进行安装包的下载,方便环境一致这样项目部署后环境一般不会出现问题.

这里我主要分为俩部分进行讲解,第一部分为有网络环境搭建,第二部分为离线安装.因为离线安装需要在线下载相关依赖包,这里我使用的python版本为3.9.0,这里可以根据你们自己开发环境来修改自己的版本.

外网环境搭建

1.下载python3.9.0.tgz安装包(linux版本)

这里直接在官方网站找到版本好对应的安装包下载即可

官方网站: https://www.python.org/downloads/release/python-390/
image.png

2.将下载好的安装包通过Xftp工具上传至服务器

这里我直接上传至/home目录下

3.在外网centos服务器下安装yum-plugin-downloadonly安装包

这个主要是用来下载python3环境的依赖包

yum install yum-plugin-downloadonly

4.创建依赖包缓存目录

mkdir -p /home/python3

5.下载python3依赖安装包

yum reintall --downloadonly --downloaddir=/home/python3  libffi-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make

6.将下载好的依赖包导出至/home/python3目录下方便我们后面去进行离线安装

yum reinstall --downloadonly --downloaddir=/home/python  libffi-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make

7.安装python3.9.0环境

因为这部比较简单所以不一一列举步骤,直接一步做完安装环境

#进入安装包目录
cd /home

#解压安装包
tar -zxvf Python-3.9.0.tgz

#创建编译安装目录
mkdir /usr/local/python3

#进入解压后的目录
cd /home/Python-3.9.0


#编译安装
./configure --prefix=/usr/local/python3

make && make install

#软连接配置python3系统路径
ln -s /usr/local/python3/bin/python3 /usr/local/bin/python3

ln -s /usr/local/python3/bin/pip3 /usr/local/bin/pip3

#验证是否成功
python3 --version 

#显示3.9.0即为成功
3.9.0

这里使用python3的命令是因为一般情况下服务器默认安装了2.7.5的python环境需要进行区分,如果执行python --version 出来的就是2.7.5

8.将需要部署的项目上传至外网服务器上

这里我也上传至/home目录下

9.通过pip3下载所需要的项目依赖

pip3 install fastapi

...

这里将项目所需要的依赖全部下载后,即可在外网服务器上运行项目

10.项目运行

#进入项目所在目录
cd /home/项目目录

#运行python项目
python3 main.py

内网离线安装

在外网服务器下可以成功安装后,我们可以直接在内网环境下进行安装环境

1.创建依赖包缓存目录

mkdir -p /home/python3

2.将我们外网服务器 /home/python3下的文件复制进 内网服务器 /home/python3下

这里是通过内网U盘进行上传的,上传的文件都是python3的依赖安装包 .rpm后缀的文件

3.离线安装python39依赖安装包

cd /home/python3
rpm -Uvh ./*.rpm --nodeps --force

4.安装python3.9.0环境

这里还是一样通过内网U盘将Python-3.9.0.tgz安装包上传至内网服务器/home目录下

#进入安装包目录
cd /home

#解压安装包
tar -zxvf Python-3.9.0.tgz

#创建编译安装目录
mkdir /usr/local/python3

#进入解压后的目录
cd /home/Python-3.9.0


#编译安装
./configure --prefix=/usr/local/python3

make && make install

#软连接配置python3系统路径
ln -s /usr/local/python3/bin/python3 /usr/local/bin/python3

ln -s /usr/local/python3/bin/pip3 /usr/local/bin/pip3

#验证是否成功
python3 --version 

#显示3.9.0即为成功
3.9.0

5.复制外网服务器中python39环境中的所有依赖到内网服务器中

这里首先将外网服务器的/usr/local/python3/lib/python3.9/site-packages/下的所有依赖上传到内网U盘,然后再上传至内网服务器的/usr/local/python3/lib/python3.9/site-packages/下即可,由于我这边没有root权限需要先将 外网服务器的依赖放在有权限的内网服务器目录,然后通过sudo的方式复制到 内网服务器的/usr/local/python3/lib/python3.9/site-packages/下

sudo cp -r /home/site-packages/* /usr/local/python3/lib/python3.9/site-packages/

6.运行项目即可

#进入项目所在目录
cd /home/项目目录

#运行python项目
python3 main.py

总结

这次也是彻底搞明白整个python离线安装的流程,期间也是踩了无数坑由于现场没有网络,在酒店与现场来来回回很多躺最终将项目运行成功.

以上便是本文的全部内容,我是全干程序员demo,每天为你带来最新好用的开发运维工具,如果你觉得用,请点赞,让更多的人了解相关工具

如果你想了解更多关于全干程序员demo,还有更多付费工具免费破解,可以关注公众号-全干程序员demo,后面文章会首先同步至公众号

相关文章
|
2月前
|
弹性计算 运维 安全
阿里云轻量应用服务器与云服务器ECS啥区别?新手帮助教程
阿里云轻量应用服务器适合个人开发者搭建博客、测试环境等低流量场景,操作简单、成本低;ECS适用于企业级高负载业务,功能强大、灵活可扩展。二者在性能、网络、镜像及运维管理上差异显著,用户应根据实际需求选择。
274 10
|
2月前
|
Shell 网络安全 开发工具
服务器已经搭建好的项目如何关联至gitee对应仓库并且将服务器的项目代码推送至gitee-优雅草卓伊凡
服务器已经搭建好的项目如何关联至gitee对应仓库并且将服务器的项目代码推送至gitee-优雅草卓伊凡
213 5
|
2月前
|
弹性计算 网络协议 Linux
阿里云服务器简介及使用教程,附送云服务器ECS自定义创建流程
阿里云ECS是安全可靠、弹性灵活的云计算服务,支持多种实例规格与操作系统,可快速创建和管理云服务器。本文详解ECS介绍、购买流程及使用教程,涵盖配置选择、网络设置、安全组规则等,助您轻松上手。
419 16
|
2月前
|
Java Linux Apache
在CentOS服务器上编译并部署NiFi源码
部署Apache NiFi在CentOS上是一个涉及细节的过程,需要注意Java环境、源码编译、配置调整等多个方面。遵循上述步骤,可以在CentOS服务器上成功部署和配置Apache NiFi,从而高效地处理和分发数据。
177 17
|
2月前
|
弹性计算 人工智能 前端开发
在阿里云ECS上部署n8n自动化工作流:U2实例实战
本文介绍如何在阿里云ECS的u2i/u2a实例上部署开源工作流自动化平台n8n,利用Docker快速搭建并配置定时任务,实现如每日抓取MuleRun新AI Agent并推送通知等自动化流程。内容涵盖环境准备、安全组设置、实战案例与优化建议,助力高效构建低维护成本的自动化系统。
587 5
|
2月前
|
存储 弹性计算 网络协议
超详细的阿里云服务器购买流程,ECS自定义购买配置教程
本文详细图解阿里云ECS服务器自定义购买全流程,涵盖付费模式、地域选择、网络配置、实例规格、镜像、存储、安全组及登录设置等核心步骤,助您轻松掌握专业级云服务器搭建方法。
|
2月前
|
存储 弹性计算 网络协议
阿里云服务器ECS是什么?ECS介绍、云服务器创建及使用教程
阿里云ECS是安全可靠、弹性灵活的云计算服务,支持多种实例规格与操作系统,可快速创建和管理云服务器。本文详解ECS介绍、购买流程(含付费模式、地域、网络、存储等设置)及使用教程,助您轻松上手云服务器。
534 4
|
2月前
|
存储 弹性计算 Linux
阿里云账号注册、领取优惠券、试用云服务器和购买云服务器教程参考
对于还未使用阿里云任何云产品的用户来说,完整的上云流程包括账号注册并完成实名认证,然后才是试用或者购买云服务器,有的新手用户对这一流程还不是很清楚。本文为大家介绍新手用户从注册阿里云账号,完成实名认证,然后领取阿里云优惠券,并试用云服务器和购买云服务器的全部流程,适合初次购买和试用阿里云服务器的新手用户参考。

热门文章

最新文章