Jenkins管理多版本python环境

场景:项目有用到python3.8和3.9,python环境直接安装在jenkins容器内。

1、进入jenkins容器

docker exec -it jenkins /bin/bash

2、安装前置编译环境

提前安装,以便接下来的配置操作

apt-get -y install gcc automake autoconf libtool make

apt-get -y install make*

apt-get -y install zlib*

apt-get -y install openssl libssl-dev

apt-get install sudo

3、下载python包

这里使用wget命令下载阿里云镜像源

镜像地址python-release-source安装包下载_开源镜像站-阿里云

cd /

apt-get install wget

wget https://mirrors.aliyun.com/python-release/source/Python-3.8.8.tgz

wget https://mirrors.aliyun.com/python-release/source/Python-3.9.8.tgz

tar -zxvf Python-3.8.8.tgz

tar -zxvf Python-3.9.8.tgz

mv Python-3.9.8.tgz python3.9

mv Python-3.8.8.tgz python3.8

4、编译源码安装python

cd python3.8

./configure --prefix=/python3.8

make && make install

重复步骤安装python3.9

5、建立软连接

sudo ln -s /python3.9/bin/python3.9 /usr/bin/python3.9

sudo ln -s /python3.8/bin/python3.8 /usr/bin/python3.8

使用update-alternatives管理python版本

sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.8 1

sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.9 2

其他几个命令

删除指定的 Python 配置(以 Python 3.8 为例)

sudo update-alternatives --remove python /usr/bin/python3.8

删除所有 Python 版本的配置

sudo update-alternatives --remove-all python

检查配置并选择默认配置

sudo update-alternatives --config python

验证python

管理pip

sudo ln -s /python3.8/bin/pip /usr/bin/pip3.8

sudo ln -s /python3.9/bin/pip /usr/bin/pip3.9

sudo update-alternatives --install /usr/bin/pip pip /usr/bin/pip3.8 1

sudo update-alternatives --install /usr/bin/pip pip /usr/bin/pip3.9 2

验证pip

相关推荐
yaoh.wang2 分钟前
力扣(LeetCode) 27: 移除元素 - 解法思路
python·程序人生·算法·leetcode·面试·职场和发展·双指针
幸存者letp4 分钟前
Python 常用方法分类大全
linux·服务器·python
2401_8414956411 分钟前
【自然语言处理】中文 n-gram 词模型
人工智能·python·算法·自然语言处理·n-gram·中文文本生成模型·kneser-ney平滑
嘻哈baby26 分钟前
为什么越来越多的人放弃Flask转向FastAPI?
python
Ghost Face...34 分钟前
Docker实战:从安装到多容器编排指南
运维·docker·容器
ss27339 分钟前
Java并发编程:DelayQueue延迟订单系统
java·python·算法
JHC00000041 分钟前
118. 杨辉三角
python·算法·面试
@游子1 小时前
Python类属性与魔术方法全解析
开发语言·python
alan07211 小时前
【Java + Elasticsearch全量 & 增量同步实战】
java·elasticsearch·jenkins
此生只爱蛋1 小时前
【Linux】正/反向代理
linux·运维·服务器