Rootop 服务器运维与web架构

centos7下pyenv安装测试

# 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

作者:Venus

服务器运维与性能优化

评论已关闭。