linux(05) 編譯安裝py3

一.編譯安裝python3

http://www.javashuo.com/article/p-dhyasubb-go.htmlhtml

1.下載python3的源碼python

cd /optlinux

yum install wget -y 安裝wget命令nginx

wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tgzweb

 

注意:sql

1.安裝python3以前,環境依賴解決
經過yum安裝工具包,自動處理依賴關係,每一個軟件包經過空格分割
提早安裝好這些軟件包,往後就不會出現不少坑 得保證這些依賴工具包,正確安裝
shell

先下載依賴包django

yum install gcc patch libffi-devel python-devel  zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel -y

 

2.解壓縮源碼包flask


    下載好python3源碼包以後
    Python-3.6.2.tgz
    解壓縮、
    tar命令能夠解壓縮 tgz格式
    tar -xvf  Python-3.6.2.tgz
vim

3.切換源碼包目錄


    cd Python-3.6.2

4.編譯且安裝


    1.釋放編譯文件makefile,這makefile就是用來編譯且安裝的
        ./configure --prefix=/opt/python36/
            --prefix  指定軟件的安裝路徑
    2.  開始編譯python3
        make
    3.編譯且安裝  (只有在這一步,纔會生成/opt/python36)
        make install
    4.配置python3.6的環境變量
        1.配置軟鏈接(注意,這個和PATH配置,二選一)
            ln -s 目標文件  軟鏈接文件
            ln -s  /opt/python36/bin/python3.6    /usr/bin/python3
            此時尚未pip
            ln -s  /opt/python36/bin/pip3   /usr/bin/pip3

或       2.配置path環境變量 (二選一便可)
             echo $PATH查看環境變量
               /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
              #這個變量賦值操做,只是臨時生效,須要寫入到文件,永久生效,須要進入環境變量在後面添加

              PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/opt/python36/bin

#linux有一個全局我的配置文件
        編輯這個文件,在最底行寫入PATH
        vim /etc/profile  #進入profile文件寫入
        寫入

讀一下這個/etc/profile 使得生效 #讀取文件才生效
        source /etc/profile

5.測試linux安裝一個django,
        pip3 install django 

6.建立django項目
        django-admin startproject mysite
7.建立django的APP應用
        django-admin startapp   app01

8.編寫視圖函數,測試一個index視圖
    
9.注意修改settings.py的allow_hosts,windows方可訪問linux的django項目  

10.最後執行命令

python manage.py runserver 0.0.0.0:8000

啓動

 

 

yum工具

yum install nginx -y

若是你用yum命令,提示yum進程被鎖定,沒法使用

解決辦法:

ps -ef|grep yum 進程,這是說 有另外一個進程也在用yum yum只能有一個進程使用

 

吞吐量

django 600

flask 1000+

tornado 異步非阻塞的框架 1800+

sanic 2800+ uvloop事件驅動 用在遊戲接口領域

go

net/http web服務器 6W+

 

 

python的虛擬環境 virtualenv

1.需求在linux服務器上,既能夠有django2.0環境,也能運行django1.11.11環境 思路: 1.django2.0想要運行,咱們得準備python解釋器+pip3軟件包管理 2.還想運行django1.11.11 python解釋器+pip3

  • 在編譯安裝一個python3.6???????

    • pip3安裝的模塊,都放在/opt/python36/lib/python3.6/site-packages

virtualenv 就是一個虛擬解釋器 就是基於物理環境下的python解釋器,虛擬/分身 出的 多個解釋器

venv1 django2.0

venv2 django1.1

venv3 flask

venv4 requestsscrapy

 

安裝virtualevn  #做用,在一臺虛擬機上建立出許多個版本環境目錄

1.下載virtualenv工具

經過物理環境的pip工具安裝

pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple virtualenv

安裝完成後你的linux就多了一個virtualenv命令

2.建立虛擬環境venv1 venv2

virtualenv --no-site-packages --python=python3 s15venv1

調用虛擬環境的命令

--no-site-packages 這是構建乾淨,隔離的模塊的參數

--python=python3 這個參數是指定虛擬環境以哪個物理解釋器爲基礎的

最後一個是虛擬環境的名字 會建立這麼一個文件夾

3.進入虛擬環境目錄,激活虛擬環境

找到你的虛擬環境目錄bin地下的activate文件

source myenv/s15venv1/bin/activate

- 激活虛擬環境,原理就是修改了PATH變量,path是有順序執行的

echo $PATH 檢查環境變量

which python3

which pip3 檢查虛擬環境是否正常

4.測試安裝2個虛擬環境,venv1,venv2,而且運行2個django不一樣版本的項目

5.退出虛擬換的命令 deactivate

 

保證本地開發環境和線上一致性的操做

解決方案:

1.經過命令保證環境的一致性,導出當前的環境中全部的包,及各個版本的簡單列表,

能夠使用 「pip list」在不產生requirements文件的狀況下, 查看已安裝包的列表。

2.上傳至服務器後,在服務器下建立virtualenv,在venv中導入項目所需的模塊依賴

pip3 install -r requirements.txt

 

虛擬環境管理工具virtualenvwrapper

#做用:因爲virtualenv建立的虛擬環境目錄容易忘記,就引入virtualenvwrapper

1.安裝這個命令,必須得在物理解釋器地下,注意!! pip3 install virtualenvwrapper

注意這裏path的配置,須要將物理解釋器的python,放在path最前面

echo $PATH 這裏保持配置和我同樣,將python3放在最前面

[root@localhost ~]# echo $PATH /opt/python36/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/root/bin

2.修改環境變量,每次開機就加載這個virtualenvwrapper工具

vim ~/.bashrc   #vim編輯用戶家目錄下的.bashrc文件,這個文件是用戶在登陸的時候,就讀取這個文件
#export 是讀取shell命令的做用
#這些變量根據你本身的絕對路徑環境修改
export WORKON_HOME=~/Envs   #設置virtualenv的統一管理目錄
export VIRTUALENVWRAPPER_VIRTUALENV_ARGS='--no-site-packages'   #添加virtualenvwrapper的參數,生成乾淨隔絕的環境
export VIRTUALENVWRAPPER_PYTHON=/opt/python347/bin/python3     #指定python解釋器
source /opt/python34/bin/virtualenvwrapper.sh #執行virtualenvwrapper安裝腳本

 

3.從新登陸會話,使得這個配置生效

 

4.此時正確的話 virtualenvwrapper工具已經能夠使用

提供了哪些命令?

 

mkvirtualenv 虛擬環境名 #自動下載虛擬環境,且激活虛擬環境

workon 虛擬環境名 #激活虛擬環境

deactivate 退出虛擬環境

rmvirtualenv 刪除虛擬環境

cdvirtualenv 進入當前已激活的虛擬環境所在的目錄

cdsitepackages 進入當前激活的虛擬環境的,python包的目錄

相關文章
相關標籤/搜索