企业级环境部署:在 Linux 服务器上如何搭建和部署 Python 环境?

在大部分企业里,自动化测试框架落地都肯定会集成到Jenkins服务器上做持续集成测试,自动构建以及发送结果到邮箱,实现真正的无人值守测试。
不过Jenkins搭建一般都会部署在公司的服务器上,不会在私人电脑里,而服务器大部分都是Linux操作系统的。所以,我们如果要在Linux上的Jenkins服务器里运行python自动化的脚本,那么就在linux服务器上把python以及相关用到的第三方库的环境都安装部署好。
我们今天就给大家详细介绍一下Linux里如何安装和部署Python的环境
安装Python
1、在Linux的home目录下创建一个python3目录
mkdir /home/python3
2、切换到python3目录
cd /home/python3
3、下载安装包到python3目录中(也可通过在网站下载安装包手动拖入到指定目录)
wget https://www.python.org/ftp/python/3.9.9/Python-3.9.9.tgz

4、将安装包解压到当前目录
tar -xzvf Python-3.9.9.tgz
上述解压操作做完后,/home/python3目录下会出现一个Python-3.9.9的目录。

安装前先修改python配置文件Setup.dist和Setup,否则使用过程中可能会出现错误:
5、进入文件所在目录:
cd /home/python3/Python-3.9.9/Modules
6、修改Setup文件:vi Setup
如图所示,取消注释这5行;

7、提前安装编译时所需要的依赖包,避免中途出错
yum -y install vim unzip net-tools && yum -y install wget && yum -y install bzip2 && yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel && yum -y install libglvnd-glx && yum -y install gcc gcc-c++
8、进入Python-3.9.9目录:
cd Python-3.9.9
9、指定python3安装路径,比如 /usr/local/python3.9:
./configure --prefix=/usr/local/python3.9
10、编译+安装:
make && make install
11、添加软链接(相当于设置桌面快捷方式):
#添加python3软链接到/usr/bin/python3
ln -s /usr/local/python3.9/bin/python3.9 /usr/bin/python3 #添加pip3软链接/usr/bin/pip3
ln -s /usr/local/python3.9/bin/pip3 /usr/bin/pip3
12、查看Python是否安装成功:
python3 -V
pip3 -V
分别得到如图结果,说明安装成功:


注意:因为Linux操作系统里自带了一个Python环境,不过是Python2的版本,所以我们重新安装了Python3的版本后,使用命令要加python3 和pip3 才会使用新安装的版本。直接用Python和pip命令,会默认使用自带的python2的环境。
安装Python的第三方库
自动化框架里使用到的任何一个第三方库都需要在linux服务器上安装成功,才能保证这个框架脚本正常的被执行。
安装第三方库的命令:pip3 install xxx 【第三方库的名字】,比如要安装requests库,使用命令 pip3 install requests:

按照同样的方法,把其他的第三方库都安装成功。
然后就可以把自动化框架的代码提交给Linux服务器,用命令行运行了,比如要执行入口文件run.py:
python3 run.py
注意:因为前面所有的第三方库都是安装在python3的环境下的,所以要运行自动化框架的代码要使用python3命令,如果使用python运行默认使用2的版本,就会找不到这些第三方库的环境了。
常见错误及其解决方案
1、如下错误是编码错误:

解决方法:
在头文件中添加如下代码即可:
# -*- coding: utf-8 -*-
或者
# coding:utf-8
2、安装第三方库失败,可以尝试升级pip3版本之后,再次安装:
/usr/local/python3.9/bin/python3.9 -m pip install --upgrade pip

企业级环境部署:在 Linux 服务器上如何搭建和部署 Python 环境?的更多相关文章
- springboot 定时任务部署至linux服务器上后会执行两次问题
springboot定时任务在本地运行时,正常执行且只执行一次,但是在maven打包成war包,部署至linux服务器上之后,定时任务奇怪的执行了两次. 由于未做负载均衡,所以可以先排除是因为多台服务 ...
- .NET跨平台之旅:将QPS 100左右的ASP.NET Core站点部署到Linux服务器上
今天下午我们将生产环境中一个单台服务器 QPS(每秒请求数)在100左右的 ASP.NET Core 站点部署到了 Linux 服务器上,这是我们解决了在 .NET Core 上使用 EnyimMem ...
- ireport部署到Linux服务器上遇到的问题解决
ireport报表在本地Windows环境运行正常,一旦部署到Linux环境上出现了如下问题: 1.打开报表,后台直接报net.sf.jasperreports.engine.util.JRFontN ...
- 把 web 项目部署到 Linux 服务器上
1.打开 eclipse,在已经完成的 web 项目上面点击右键,选择 export,然后选择导出成 war 包. 以部署 SMBMS 项目为例 2.项目打包成 war ,选择项目导出到的位置. ...
- 案例 (一)如何把python项目部署到linux服务器上
一.背景 用Python写了个脚本,需要部署到Linux环境的服务器上,由于服务器linux系统(centos,redhat等)自带的是python2,现在的python萌新都是从python3开 ...
- windows 安装 jenkins 自动化构建部署至linux服务器上
一.环境准备 1.git安装环境 参考链接 https://www.cnblogs.com/yuarvin/p/12500038.html 2.maven安装环境,包括jdk环境安装 参考链接 htt ...
- springboot打成Jar包后部署至Linux服务器上
下面主要记录一下springboot打包成jar包在Linux服务上部署的步骤: 1.通过WinSCP,将相应的Jar文件,复制到Linux指定目录下,如/home/ 2.打开ssh,进入/home目 ...
- openfire源码修改后如何打包部署到linux服务器上
原文:http://blog.csdn.net/jinzhencs/article/details/50457152 1.linux版本的3.10.3解压部署启动(过程略,参考我的另一篇博文http: ...
- Linux服务器上的tomcat中部署web项目
首先了解一下下面几个概念,讲得不太准确:1.JVMJVM是class以及jar(实际上就是很多个class压缩在一起)的运行环境,特征就是java和javaw命令,通过这两个命令,你可以执行class ...
- 简单将Springboot项目部署到linux服务器上
1.使用springboot的jar包方式 直接使用maven工具按照步骤点击就可以直接打包 2.到target目录下找到 jar包 3.将jar包放到linux的任意文件夹下(此项目是之前的kafk ...
随机推荐
- 深入剖析Arthas源码
一. 前言 Arthas 相信大家已经不陌生了,肯定用过太多次了,平时说到 Arthas 的时候都知道是基于Java Agent的,那么他具体是怎么实现呢,今天就一起来看看. 首先 Arthas 是在 ...
- 记录一次WhatTheFuck经历
起因 很早之前就一直在维护一个git仓库,平时调研什么组件就会在里面新建一个springboot的工程用来编写示例代码. 最一开始使用的是SpringInitializr,后来网站更新之后,只能生成J ...
- Vue 组件生命周期:探索钩子
title: Vue 组件生命周期:探索钩子 date: 2024/5/27 18:42:38 updated: 2024/5/27 18:42:38 categories: 前端开发 tags: 生 ...
- OpenVSCode云端IDE加入Rainbond一体化开发体系
OpenVSCode 是一款基于Web 界面的在线IDE 代码编辑器,只需要PC端存在浏览器即可使用,更轻量,高效,简洁,其基础功能完全继承了微软出品的 VS Code ,可以通过安装扩展的方式继续加 ...
- 开源一站式敏捷测试管理,极简项目管理平台 itest(爱测试) 6.6.2 发布,便捷迫切功能增强
(一)itest 简介及更新说明 itest 开源敏捷测试管理,testOps 践行者,极简的任务管理,测试管理,缺陷管理,测试环境管理,接口测试5合1,又有丰富的统计分析.可按测试包分配测试用例执行 ...
- vuex做购物车功能
先创建一个cart组件 <template> <div> <ListItem></ListItem> </div> </templat ...
- [SWPUCTF 2021 新生赛]gift_F12
首先我们打开环境会发现花里胡哨的,而题目中有提示:F12,所以我们直接F12查看源码 然后ctrl+f信息检索flag.直接找到flag提交 但要注意提交格式为NSSCTF{}
- ETL工具-nifi干货系列 第十七讲 nifi Input Port&Out Port 实战教程
1.端口(Port),包含输入端口(Input Port)和输出端口(Out Port ) 使用一个或多个处理组构建的数据流需要一种方式将处理组连接到其他数据流组件. 处理组和处理组之间可以通过使用端 ...
- 网络问题排查必备利器:Pingmesh
背景 当今的数字化世界离不开无处不在的网络连接.无论是日常生活中的社交媒体.电子商务,还是企业级应用程序和云服务,我们对网络的依赖程度越来越高.然而,网络的可靠性和性能往往是一个复杂的问题,尤其是在具 ...
- 利用Wireshark抓包分析DNS域名解析过程
一.DNS协议概述 DNS协议也可以称为DNS服务,全称是Domain Name System,即域名系统,和HTTP协议一样,也是一个位于应用层的协议(服务),它是基于运输层的UDP协议的.从D ...