《針對Linux Suse的Python運行環境的部署過程:升級python版本,安裝pipenv 》—人生苦短,我用python(十)

寫在前面:

博主在之前的文章中提到過,利用flask web框架部署了一個小型的web應用。在實際的開發過程中,博主使用的是win環境下的pycharm,創建flask項目。在博主工作的公司的生產環境中,Linux Suse操作系統佔其中的大多數,在本篇文章中,博主將結合自己實踐的經驗,陳述一下如何在升級linux suse 11.4自帶的python版本,以及安裝pip、pipenv等軟件。依然由於博主不是專職的系統工程師,這個部署過程肯定不是最合適的,僅在此作爲記錄。


部署過程:

本次實踐的操作系統爲Linux Suse 11.4,自帶python版本爲2.6.9,可以通過在安裝好操作系統後,執行python命令進行查看。

想要安裝的python版本是3.6.8,首先從官網下載安裝包,下載好後將安裝包上傳到服務器任意目錄中,在這裏我將其上傳到/tmp下

在安裝python先,安裝python的過程中需要用到zlib,我們同樣將其上傳到/tmp下

如下圖:

接下來,首先解壓zlib安裝包,安裝zlib

linux-r8k6:/tmp # tar xzvf zlib-1.2.8.tar.gz

linux-r8k6:/tmp # cd zlib-1.2.8/

linux-r8k6:/tmp/zlib-1.2.8 # ./configure

linux-r8k6:/tmp/zlib-1.2.8 # make & make install

安裝後zlib後,由於在之後的使用pip,或使用python其他庫的過程中需要用到SSL,在這裏我們首先安裝openssl

在這裏,需要安裝的是openssl-devel

這個軟件在我的操作系統鏡像中不存在,所有首先需要添加阿里源,獲取外部軟件資源

zypper addrepo -f http://mirrors.aliyun.com/opensuse/update/leap/42.1/oss openSUSE-42.1-Update-Oss

zypper addrepo -f http://mirrors.aliyun.com/opensuse/update/leap/42.1/non-oss/ openSUSE-42.1-Update-Non-Oss

zypper addrepo -f http://mirrors.aliyun.com/opensuse/distribution/leap/42.1/repo/oss/ openSUSE-42.1-Oss

zypper addrepo -f http://mirrors.aliyun.com/opensuse/distribution/leap/42.1/repo/non-oss/ openSUSE-42.1-Non-Oss

zypper addrepo -f http://mirrors.aliyun.com/packman/openSUSE_Leap_42.1/ aliyun-packman

添加好阿里源後,通過yast安裝openssl-devel

點擊“OK”,之後點擊“Accept”—“Continue”

這樣便安裝好了openssl-devel

在這之後,解壓python3.6.8安裝包,安裝python 3.6.8

linux-r8k6:/tmp # tar xzvf Python-3.6.8.tgz

linux-r8k6:/tmp # cd Python-3.6.8/

linux-r8k6:/tmp/Python-3.6.8 # ./configure --enable-optimizations --prefix=/usr/local/ --with-ssl

我們在上面的命令中指定了安裝位置爲/usr/local

之後,我們繼續安裝

linux-r8k6:/tmp/Python-3.6.8 # make

linux-r8k6:/tmp/Python-3.6.8 # make altinstall

這樣便安裝好了python3.6.8,可以在python 3.6.8的安裝目錄中運行該版本python,如下圖:

同樣,我們可以在上圖中看到,SSL模塊也已經可以被使用

下面,我們備份原有python的軟連接,添加新的連接

linux-r8k6:/usr/local/bin # mv  /usr/bin/python /usr/bin/python.backup

linux-r8k6:/usr/local/bin # ln -s /usr/local/bin/python3.6 /usr/bin/python

linux-r8k6:/usr/local/bin # ln -s /usr/local/bin/python3.6 /usr/bin/python3

現在,我們在運行python命令已經能夠看到,運行版本爲python 3.6.8了

接下來,我們創建關於pip的軟連接,在安裝好python 3.6.8後,pip也已經安裝好了

linux-r8k6:/usr/local/bin # ln -s /usr/local/bin/pip3.6 /usr/bin/pip

下面,我們通過pip安裝pipenv,在《FLask Web開發實戰》中對Pipenv是這樣介紹的,Pipenv是基於pip的Python包管理工具,它和pip的用法非常相似,可以看作pip的加強版,它的出現解決了舊的pip+virtualenv+requirements.txt的工作方式的弊端。具體來說,它是pip、Pipfile和Virtualenv的結合體,它讓包安裝、包依賴管理和虛擬環境管理更加方便,使用它可以實現高效的Python項目開發工作流。安裝好pip後,python模塊的安裝都非常簡單,當然前提是環境要與互聯網聯通

linux-r8k6:/usr/local/bin # pip install pipenv

這樣我們便安裝好了pipenv,可以通過命令來驗證這一點

之後,我們只需要在我們的項目根目錄上,運行下面的命令就可以創建虛擬環境了,如下圖:


總結:

至此便完成了Linux suse11.4版本python版本的升級,pip的使用,以及pipenv的安裝

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章