1. 程式人生 > >centos7.4 部署flask專案之 gunicorn

centos7.4 部署flask專案之 gunicorn

centos7.4 部署flask專案之 gunicorn

遠端部署flask專案gunicorn的基操

一般requirement檔案中就有gunicorn的包名,,不確定你可以開啟該檔案看一下是否有要安裝gunicorn的包名,,檔案中沒有也沒關係直接再虛擬壞境中在pip install gunicorn就可以了。

將flask專案中的requirements檔案 ,用於記錄所有依賴包及其精確的版本號,以便在新環境中進行部署操作。

在虛擬環境使用以下命令將當前虛擬環境中的依賴包以版本號生成至檔案中:
pip freeze > requirements.txt
當需要建立這個虛擬環境的完全副本,可以建立一個新的虛擬環境,並在其上執行以下命令:
pip install -r requirements.txt

gunicorn的基本常用使用命令

  1. gunicorn -v
    在虛擬壞境中輸入#gunicorn -v 就可以顯示出gunicorn的版本資訊了。

  2. gunicorn manage:app -b 127.0.0.1:5000 (切記要到啟動程式檔案的目錄下執行此命令 否則報錯嘻嘻)
    在虛擬壞境中#gunicorn manage:app -b 127.0.0.1:5000中的manage就是當前目錄的下flask專案的啟動檔案manage.py,,如果你的命名不是manage就寫你的那個命名。
    app就是flask專案manage.py裡面建立的例項app,,什麼命名寫什麼。
    -b 繫結bind的意思 繫結IP和埠
    [2018-12-12 04:11:03 +0000] [6768] [INFO] Starting gunicorn 19.9.0
    [2018-12-12 04:11:03 +0000] [6768] [INFO] Listening at:

    http://127.0.0.1:5000 (6768)
    [2018-12-12 04:11:03 +0000] [6768] [INFO] Using worker: sync
    [2018-12-12 04:11:04 +0000] [6773] [INFO] Booting worker with pid: 6773
    看到這肯定是successful了啊

  3. pstree -ap|grep gunicorn

|                           |-grep,6700 --color=auto gunicorn
|           `-gunicorn,3491 /home/python/venv/bin/gunicorn manage:app -b 127.0.0.1:5000
|               `-gunicorn,3839 /home/python/venv/bin/gunicorn manage:app -b 127.0.0.1:5000

類似這樣的顯示
4. kill -9 3491 直接殺程序 如果想重啟的話 別搞其他優雅重啟的花拳繡腿,這多簡單粗暴符合我個性,一般殺主程序就行啦,不行都殺光。

小白你過來一下

我叫自己幹嘛emmmm…
習慣使用ubantu之後,因為學習都是使用ubantu 然後第一次部署也花費很多時間,感覺自己賊菜。在redhat發行版centos7系統(免費)裡還是有很多不一樣的,,比如yum(ubantu裡是apt-get)都類似與pip安裝嘛、~# 然後這裡平時在~#]或者 ~$後敲命令都是普通使用者在操作,,特別是centos系統裡,經常沒有許可權。。。導致一開始venv虛擬環境都進不去,很多命令也執行不了(加sudo也執行不了比如source)這時候、這時候
sudo su 進入root身份;不能直接使用su切換到root 這樣password會因為系統身身root可能沒有設定password而報錯,,所以使用sudo su或者別的命令,,這樣一切豁然開朗,,想刪那個刪那個嘻嘻。。。

           (centos中命令都是在]#後敲的,ubantu就是~$後輸入命令)