pyenv-Python多版本虚拟环境管理

1、软件安装

1.1、安装依赖包

1.1.1、依赖库

yum install -y git curl

# python编译依赖如下
yum install -y gcc make xz-devel patch gdbm-devel openssl-devel
yum install -y sqlite-devel readline-devel zlib-devel bzip2-devel

1.1.2、安装openssl

# 安装perl和所需要的模板块
yum install perl -y

# 解压安装
curl -o openssl-1.1.1t.tar.gz  https://www.openssl.org/source/openssl-1.1.1t.tar.gz && tar xvf openssl-1.1.1t.tar.gz && cd openssl-1.1.1t && ./config --prefix=/usr/local/openssl-1.1.1 && make && make install

# 创建软链接,方便管理
ln -s /usr/local/openssl-1.1.1 /usr/local/openssl

# 增加动态链接库
echo " /usr/local/openssl/lib" >>/etc/ld.so.conf
ldconfig -v

# 更换openssl
mv /usr/bin/openssl /usr/bin/openssl.old
ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl

1.2、安装pyenv软件

# 下载软件
wget https://github.com/pyenv/pyenv/archive/refs/tags/v2.3.20.tar.gz
tar xvf v2.3.20.tar.gz -C /usr/local/
ln -s /usr/local/pyenv-2.3.20 /usr/local/pyenv

# 配置环境变量
cat << 'CAT_END' >> /etc/profile
export PYENV_HOME=/usr/local/pyenv/
export PATH=$PATH:$PYENV_HOME/bin
CAT_END
source /etc/profile

1.3、安装python3.11

1.3.1、查看可安装版本

pyenv install -l

1.3.2、安装python

useradd python
su - python
CONFIGURE_OPTS
="-with-openssl=/usr/local/openssl" \ CPPFLAGS="-I/usr/local/openssl/include" \ LDFLAGS="-L/usr/local/openssl/lib" \ pyenv install -v 3.11

1.3.3、查看当前安装的python版本

# 查看所有已经安装版本
]$ pyenv versions
* system (set by /home/python/.pyenv/version)
  3.11.4
  
# 当前python版本,system表示当前操作系统使用的版本
]$ pyenv version
system (set by /home/python/.pyenv/version)

1.4、配置登陆会话环境变量

echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile
echo 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(pyenv init -)"' >> ~/.bash_profile

1.5、pyenv-virtualenv安装

1.5.1、下载软件

wget https://codeload.github.com/pyenv/pyenv-virtualenv/tar.gz/refs/tags/v1.2.1

1.5.2、安装

tar xvf pyenv-virtualenv-1.2.1.tar.gz && cd pyenv-virtualenv-1.2.1
PREFIX=/usr/local/pyenv ./install.sh

2、创建虚拟环境

2.1、创建两个版本的py

2.1.1、创建

CONFIGURE_OPTS="-with-openssl=/usr/local/openssl" \
CPPFLAGS="-I/usr/local/openssl/include" \
LDFLAGS="-L/usr/local/openssl/lib"# 创建两个版本的virtualenv
pyenv virtualenv 3.11.4 py3.11
pyenv virtualenv 3.9.17 py3.9

2.1.2、查看保存的位置

]$ ll .pyenv/versions/
drwxr-xr-x. 7 python python 68 6月  20 22:59 3.11.4
drwxr-xr-x. 7 python python 68 6月  20 23:04 3.9.17
lrwxrwxrwx. 1 python python 47 6月  20 23:04 py3.11 -> /home/python/.pyenv/versions/3.11.4/envs/py3.11
lrwxrwxrwx. 1 python python 46 6月  20 23:04 py3.9 -> /home/python/.pyenv/versions/3.9.17/envs/py3.9

2.2、版本切换

2.2.1、切换3.11版本

]$ pyenv local py3.11
]$ python -V
Python 3.11.4

2.2.2、切换3.9版本

]$ pyenv local py3.9
]$ python -V        
Python 3.9.17

2.3、版本查看

pyenv version
pyenv versions

 

posted @ 2023-06-21 12:03  小粉优化大师  阅读(78)  评论(0编辑  收藏  举报