# github仓库,下载zip包
https://github.com/pyenv/pyenv
[root@jenkins ~]# unzip pyenv-master.zip [root@jenkins ~]# mv pyenv-master .pyenv [root@jenkins ~]# echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc [root@jenkins ~]# echo 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc [root@jenkins ~]# echo 'eval "$(pyenv init -)"' >> ~/.bashrc [root@jenkins ~]# source .bashrc # 查看已安装版本 [root@jenkins ~]# pyenv versions * system (set by /root/.pyenv/version) # 手动下载py安装包放入到pyenv下的 cache(手动新建)目录中,防止某些情况下下载慢。 https://www.python.org/downloads/ https://www.python.org/ftp/python/3.12.0/Python-3.12.0.tar.xz 需要下载 tar.xz 压缩格式的,不能是 tgz 的。这里用3.12.0版本测试。 [root@jenkins .pyenv]# mkdir cache # 手动上传安装包 [root@jenkins cache]# ll total 20096 -rw-r--r-- 1 root root 20575020 Oct 2 08:33 Python-3.12.0.tar.xz # 安装会用到的依赖包,否则可能会提示ModuleNotFoundError: No module named 'xxx'的错误。 [root@jenkins cache]# yum install gcc make patch zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel openssl-devel tk-devel libffi-devel xz-devel # 安装 [root@jenkins cache]# pyenv install 3.12.0 Installing Python-3.12.0... 可以看到是直接安装,没有下载步骤。 # 把上传的压缩包改个名,就会变为自动下载安装。 [root@jenkins cache]# mv Python-3.12.0.tar.xz Python-3.12.0.tar.xz.bak [root@jenkins cache]# pyenv install 3.12.0 Downloading Python-3.12.0.tar.xz... -> https://www.python.org/ftp/python/3.12.0/Python-3.12.0.tar.xz # 查看已安装的版本 [root@jenkins cache]# pyenv versions * system (set by /root/.pyenv/version) 3.8.18 3.9.18 # 全局切换版本 [root@jenkins ~]# pyenv global 3.8.18 [root@jenkins ~]# python -V Python 3.8.18 # 换回系统自带版本 [root@jenkins ~]# pyenv global system
这样pip下载的包都会在.pyenv目录下,方便将其传到别的服务器,无需再安装。
原创文章,转载请注明。本文链接地址: https://www.rootop.org/pages/5360.html