1. 程式人生 > >centos7.2下pip3 + python3.5 + django + nginx + uwsgi

centos7.2下pip3 + python3.5 + django + nginx + uwsgi

family 9.png logs art ews 安裝 個人 ont 安裝redis

Centos7.2 安裝python 3.5及pip安裝

須知:1. centos自帶python2.7

2. 此教程適合大多數linux系統,本文以centos7.2為例

安裝python 3.5

1.CentOS7.2 安裝Python 的依賴包

yum groupinstall "Development tools"
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel

2、下載Python3.5的源碼包並編譯

wget https://www.python.org/ftp/python/3.5.0/Python-3.5.0.tgz
tar xf Python-3.5.0.tgz
cd Python-3.5.0
./configure --prefix=/usr/local --enable-shared
make
make install

# 創建python3軟鏈接
ln –s /usr/local/bin/python3 /usr/bin/python3

3、在運行Python之前需要配置庫:

echo /usr/local/lib >> /etc/ld.so.conf.d/local.conf
ldconfig

4、運行:

python3 --version
Python 3.5.0

Python 3.5.0安裝成功!

安裝easy_install、pip的方法

1.CentOS 安裝easy_install的方法:

wget -q http://peak.telecommunity.com/dist/ez_setup.py
python ez_setup.py

2.、CentOS安裝python包管理安裝工具pip的方法如下:

wget --no-check-certificate https://github.com/pypa/pip/archive/1.5.5.tar.gz

tar zvxf 1.5.5

cd pip-1.5.5/

python3 setup.py install

OK,這樣就安裝好pip了

搭建虛擬環境

1.安裝虛擬環境

sudo pip install virtualenv

  1. 安裝虛擬環境擴展包

    pip install virtualenvwrapper

  2. sudo 修改家目錄下配置文件.bashrc:

    cd # 到家目錄

    vi .bashrc #打開文件,添加如下內容:

    export WORKON_HOME=$HOME/.virtualenvs

    source /usr/local/bin/virtualenvwrapper.sh

  3. 使用source .bashrc命令使配置文件生效。

    source .bashrc

    技術分享圖片

  4. 創建python3虛擬環境:

    mkvirtualenv -p python3 py_django

  5. 進入所創建的虛擬環境,安裝對應項目所有需要安裝的包

    workon py_django

    pip install ...

    安裝redis、mysql數據集庫,並啟動(本項目中使用到redis)

    安裝uwsgi

    1,進入虛擬環境 安裝uwsgi

    pip install uwsgi

    2.配置uWSGI,在項目目錄下創建uwsgi.ini文件,配置如下:

    [uwsgi]

    #使用nginx連接時使用

    socket=127.0.0.1:8092

    #直接做web服務器使用

    # http=127.0.0.1:8092

    #項目目錄地址

    chdir=/srv/http/dailyfresh

    #項目中wsgi.py文件的目錄,相對於項目目錄

    wsgi-file=dailyfresh/wsgi.py

    processes=4

    threads=2

    master=True

    pidfile=uwsgi.pid

    daemonize=uwsgi.log

    # 虛擬環境地址

    virtualenv=/root/.virtualenvs/py_django

  6. 啟動uwsgi
    

    uwsgi --ini uwsgi.ini

    FTP上傳代碼

    將代碼放在根目錄的srv文件下,不能放在root目錄下

    技術分享圖片

    安裝nginx

    執行如下命令進行安裝

    cd /usr/local/

    wget http://nginx.org/download/nginx-1.5.6.tar.gz tar xf nginx-1.5.6.tar.gz

    cd nginx-1.5.6

    ./configure

    make && make install

    現在user/local目錄下多了一個nginx文件

    技術分享圖片

    修改nginx.conf配置

    vi usr/local/nginx/conf/nginx.conf

    技術分享圖片

    啟動nginx

    nginx/sbin/nginx

    用瀏覽器就訪問公網ip

    就能顯示網頁html文件了

    靜態文件顯示

    在服務器上創建如下目錄。

    sudo mkdir -vp /var/www/dailyfresh/static/

    修改目錄權限。

    sudo chmod 777 /var/www/dailyfresh/static/
    

    修改dailyfresh/settings.py文件。
    
    STATIC_ROOT=‘/var/www/dailyfresh/static/‘
    

    收集所有靜態文件到static_root指定目錄。
    
    python manage.py collectstatic
    

    技術分享圖片

    技術分享圖片

    停止後再啟動nginx服務。

    個人centos部署, 部分不同,請友友自行修改

centos7.2下pip3 + python3.5 + django + nginx + uwsgi