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

centos7.4 部署flask專案之 Nginx

centos7.4 部署flask專案之 Nginx

遠端部署flask專案nginx的基操

因為nginx公司有內部專用版本,所以這主要說一些我以前沒接觸到的東西。我尼瑪是全沒接觸到的好嗎、你有以前嗎、沒有。。。我就是小白一個
公司提供的Yum Config Info, yum源吧。第一次見:四個我看其他部落格都是一個,我也不知道啥意思,也不想知道啥意思因為肯定會忘,知道有這個東西就行,可以百度一下具體的意思。
[tools-1]
gpgcheck=0
enabled=1
name=tools
baseurl=http://123.com/prod/tools/centos7_64

[tools-2]
gpgcheck=0
enabled=1
name=tools
baseurl=http://123.com/prod/tools/noarch

[tuning-1]
gpgcheck=0
enabled=1
name=tuning
baseurl=http://123/prod/tuning/centos7_64

[tuning-2]
gpgcheck=0
enabled=1
name=tuning
baseurl=http://123.com/prod/tuning/noarch

nginx的基本常用使用命令

  1. vi /etc/yum.repos.d/nginx.repo
    由於yum源中沒有我們想要的nginx,那麼我們就需要建立一個“/etc/yum.repos.d/nginx.repo”的檔案,其實就是新增一個yum源。然後把公司內部的那個nginx yum config info 全部複製進去,複製一個好像也可以吧沒試過,我這麼懶肯定怕出麻煩全部copy進去,:wq(我去一下)儲存退出(記得root許可權啊)

  2. yum list |grep nginx

nginx.x86_64                               1:1.12.2-1.el7_4.ngx        nginx
nginx-debug.x86_64                         1:1.8.0-1.el7.ngx           nginx
nginx-debuginfo.x86_64                     1:1.12.2-1.el7_4.ngx        nginx
nginx-module-geoip.x86_64                  1:1.12.2-1.el7_4.ngx        nginx
nginx-module-geoip-debuginfo.x86_64        1:1.12.2-1.el7_4.ngx        nginx
nginx-module-image-filter.x86_64           1:1.12.2-1.el7_4.ngx        nginx
nginx-module-image-filter-debuginfo.x86_64 1:1.12.2-1.el7_4.ngx        nginx
nginx-module-njs.x86_64                    1:1.12.2.0.1.14-1.el7_4.ngx nginx
nginx-module-njs-debuginfo.x86_64          1:1.12.2.0.1.14-1.el7_4.ngx nginx
nginx-module-perl.x86_64                   1:1.12.2-1.el7_4.ngx        nginx
nginx-module-perl-debuginfo.x86_64         1:1.12.2-1.el7_4.ngx        nginx
nginx-module-xslt.x86_64                   1:1.12.2-1.el7_4.ngx        nginx
nginx-module-xslt-debuginfo.x86_64         1:1.12.2-1.el7_4.ngx        nginx
nginx-nr-agent.noarch                      2.0.0-12.el7.ngx            nginx
pcp-pmda-nginx.x86_64                      3.11.8-7.el7                base

出現類似於這樣的顯示說明yum源配置成功啦

  1. yum -y install nginx
    顯示一大坨說明nginx壞境安裝成功了。

  2. rpm -q nginx
    不放心可以檢視一下是否安裝成功

  3. vi /etc/nginx/nginx.conf
    然後nginx的配置檔案瞭然後nginx的配置檔案了

#轉發多個gunicorn伺服器,那你肯定要告訴nginx有多個,所以你不僅要在localtion裡開啟 proxy_pass http://flask; 這程式碼中的flask就是下面這個flask(取得名字要一模一樣),然後nginx就可以分流、轉發、負載均衡了。。。

upstream flask {
        server 127.0.0.1:5000;
        server 127.0.0.1:5001;
}
server {
        # 監聽80埠
        listen 80 default_server;
        listen [::]:80 default_server;

        root /var/www/html;

        index index.html index.htm index.nginx-debian.html;
	#這裡的下劃線可以是預設的 _ ,也可以把_改成具體的ip,就像我遠端部署的伺服器ip 123.234.456.567。
        server_name _;

        location / {
                # 請求轉發到gunicorn伺服器
                proxy_pass http://127.0.0.1:5000;
                # 請求轉發到多個gunicorn伺服器
                # proxy_pass http://flask;
                # 設定請求頭,並將頭資訊傳遞給伺服器端 
                proxy_set_header Host $host;
                # 設定請求頭,傳遞原始請求ip給 gunicorn 伺服器
                proxy_set_header X-Real-IP $remote_addr;
        }
}

檔案裡其他的一些配置資訊可以檢視百度看一下,沒用到就不看了又不是美女。

  1. /usr/sbin/nginx
    好像是which nginx檢視安裝的nginx位置,然後進入到nginx的路徑輸入nginx來啟動
  2. ps -ef | grep nginx
    檢視nginx程序

小白你過來一下

我叫自己幹嘛emmmm…

tar相當於windows裡的.rar格式的壓縮包,可用tar -xzf命令和引數解壓;;而rpm包相當於windows裡的.exe程式,要用rpm - ivh來安裝,,前者是壓縮包,後者是安裝包。
linux目錄 /etc 配置檔案一般都放這裡。