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

相关推荐
im_AMBER3 小时前
学习日志19 python
python·学习
小阳睡不醒4 小时前
小白成长之路-部署Zabbix7(二)
android·运维
杰克逊的日记4 小时前
GPU运维常见问题处理
linux·运维·gpu
caolib4 小时前
无需云服务器的内网穿透方案 -- cloudflare tunnel
运维·服务器·内网穿透·tunnel·cloudflared
奇舞精选4 小时前
k8s基本概念初探
运维
誰能久伴不乏5 小时前
Linux系统调用概述与实现:深入浅出的解析
linux·运维·服务器
程序员学习随笔5 小时前
Linux进程深度解析(2):fork/exec写时拷贝性能优化与exit资源回收机制(进程创建和销毁)
linux·运维·服务器
mortimer5 小时前
安装NVIDIA Parakeet时,我遇到的两个Pip“小插曲”
python·github
-SGlow-6 小时前
MySQL相关概念和易错知识点(2)(表结构的操作、数据类型、约束)
linux·运维·服务器·数据库·mysql
@昵称不存在6 小时前
Flask input 和datalist结合
后端·python·flask