同一个系统下装了多个python应用,而这些python应用需要的python版本不一样,怎么解决,答案是pyenv,当然也可以用docker。
1.安装依赖
yum install gcc make patch gdbm-devel openssl-devel sqlite-devel readlinedevel zlib-devel bzip2-devel
2.创建普通用户
useradd python
echo python123 | passed --stdin python
3.脚本安装
curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenvinstaller | bash
如果下载失败,直接打开下面文件,复制文件代码到python用户家目录pyenv.sh,然后执行bash pyenv.sh
https://github.com/pyenv/pyenv-installer/blob/master/bin/pyenv-installer
4.配置环境变量
安装完,按照提示处理,把下面的脚本放到当前用户的.bashrc文件末尾
# the following to ~/.bashrc: export PATH="/home/python/.pyenv/bin:$PATH" eval "$(pyenv init -)" eval "$(pyenv virtualenv-init -)"
5.安装多版本
$ pyenv install -l $ pyenv install 3.6.9 -vvv $ pyenv install 3.7.7 -vvv $ pyenv version 当前python版本,system表示当前操作系统使用的版本 $ pyenv versions 查看所有已经安装版本,*星号表示当前版本
pyenv是源代码编译安装Python解释器,所以一定要安装gcc等依赖。
6.创建虚拟环境,并添加目录为指定的python版本
$ mkdir -p projects/test369 $ mkdir -p projects/test369 $ cd projects/test369/ [python@nodex test369]$ pyenv virtualenv 3.6.9 py369 [python@nodex test369]$ pyenv local py369 (py369) [python@nodex test369]$ python -V Python 3.6.9 (py369) [python@nodex test369]$ pyenv version py369 (set by /home/python/projects/test369/.python-version)