程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

Jenkins - Shell 腳本安裝升級 Python 3

編輯:Python

引言

Jenkins 實現 CI/CD,要運行 Pyhon 腳本,而有些 VM 默認只裝了 Python 2,但腳本必須用 Python 3 環境來執行。或則系統自帶 Python 2 和 Python 3 版本,但是需要更新版本的 Python 3。當然如果你能很方便的找到 DevOps 工程師,這個問題就很好解決了,直接在 VM 模塊上裝 Python 3 便可以,但也有會遇到聯系不到 DevOps,只能苦逼地腳本安裝,每次運行 Python 腳本之前,先在隨機分配 VM 上裝一遍 Python 3. 我就是後面一種,不能直接 log in 到 VM 操作, 只能通過命令屬於盲人摸象型的探索,記錄一下經歷了一些坑。

內容提要:

  1. 了解 Python 環境
  2. 全新安裝 Python 3
  3. 升級 Python

了解 Python 環境

可以通過一些命令,來了解一下 Python 的環境。

查看當前環境安裝的 Python

執行 whereis python 命令

console output:
比較幸運,這台機子上了很多版本的 Python。

查看 Python 對應的軟鏈接

執行 ls -l /usr/bin|grep python 命令先查看之前 Python 對應軟鏈接

console output:
Python 3 對應的是 Python 3.8 版本
Python 2 對應的是 Python 2.7 版本
Python 對應的是 Python 3

可以進一步驗證版本:執行下列命令
python -V
python2 -V
python3 -V


console output:

全新安裝 Python 3

通過一些命令了解到 Python 的環境情況,但是如果不幸的事,環境上沒有裝任何 Python 3 版本,那麼就得全新安裝一套 Python 3 環境。

了解系統版本

通過執行命令 cat /proc/version
console output:
了解到是 Ubuntu 系統,不同的系統也會有影響。

下面我們就在 Ubuntu 系統來安裝全新 Python 3 環境

  1. 安裝編譯依賴項
    sudo apt-get install zlib1g-dev libbz2-dev libssl-dev libncurses5-dev libsqlite3-dev
    如果不進行這步可能會出現一些問題,比如:
    handle ModuleNotFoundError: No module named '_bz2'
    Command 'lsb_release -a' returned non-zero exit status 1
  2. 下載並解壓源碼包
    wget https://www.python.org/ftp/python/3.11.0/Python-3.11.0.tar.xz
    tar -xvJf Python-3.11.0.tar.xz
  3. 編譯安裝
    cd Python-3.11.0/
    sudo ./configure prefix=/usr/local/py3 CFLAGS=-fPIC
    sudo make && make install
  4. 修改軟鏈接
    sudo ln -sf /usr/local/py3/bin/python3.11 /usr/bin/python3
    sudo ln -sf /usr/local/py3/bin/pip3.11 /usr/bin/pip3
  5. 測試是否成功
    python3 -V
    pip3 -V 或 python3 -m pip -V

完整的 Shell 腳本:

cd /usr/local
if [ ! -d "/usr/local/py3" ]; then
sudo mkdir /usr/local/py3
fi
sudo chmod -R 777 /usr/local/py3
cd /tmp
sudo apt-get install -y zlib1g-dev libbz2-dev libssl-dev libncurses5-dev libsqlite3-dev
wget https://www.python.org/ftp/python/3.11.0/Python-3.11.0.tar.xz
tar -xvJf Python-3.11.0.tar.xz
cd Python-3.11.0/
sudo ./configure prefix=/usr/local/py3 CFLAGS=-fPIC
sudo make && make install
sudo ln -sf /usr/local/py3/bin/python3.11 /usr/bin/python3
sudo ln -sf /usr/local/py3/bin/pip3.11 /usr/bin/pip3
python3 -V
pip3 -V

升級 Python

絕大多數的 Linux 發行版(Ubuntu、CentOS 等)都默認自帶了 Python。有的 Linux 發行版甚至還會自帶兩個版本的 Python,例如最新版的 Ubuntu 會自帶 Python 2.x 和 Python 3.x。你覺得現有的 Python 3 版本不夠新,那麼就需要更新 Python 版本。

在 Ubuntu 終端執行以下兩條命令即可更新 Python 版本:
sudo apt-get update
sudo apt-get install python3.11

第一條命令用來指定更新 /etc/apt/sources.list 和 /etc/apt/sources.list.d 所列出的源地址,這樣能夠保證獲得最新的安裝包。

第二條命令用來指定安裝 Python 3.11,這是目前最新的 Python 版本。


Console Output:
相比前面沒有升級,多了個 python3.11 了,如果需要使用該版本,參考上面更改一下軟鏈接即可。


  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved