摘要:博客寫得差不多了,打算部署到云上因?yàn)樗俣鹊年P(guān)系,不打算部署在上,于是申請了阿里云,環(huán)境是上篇文章提到的位安裝和配置好和,又稍微了解點(diǎn)服務(wù)器的知識后,打算按這里的方法進(jìn)行部署,思路是用當(dāng)應(yīng)用容器,當(dāng)反向代理安裝安裝非常簡單,一條命令就解決了測
博客寫得差不多了,打算部署到云上
因?yàn)樗俣鹊年P(guān)系,不打算部署在AWS上,于是申請了阿里云,環(huán)境是上篇文章提到的CentOS 7 64位
安裝和配置好Python3和MySQL,又稍微了解點(diǎn)web服務(wù)器的知識后,打算按這里的方法進(jìn)行部署,思路是用gunicorn當(dāng)應(yīng)用容器,NGINX當(dāng)反向代理
安裝非常簡單,一條pip命令就解決了
測試也很簡單,寫個簡單的Flask英語存成.py文件,放到某個目錄,然后用gunicorn去運(yùn)行就好
這兩點(diǎn)可以參考gunicorn官網(wǎng)的quick start或這里
確定跑起來后,可以kill掉,需要時再啟動
在gunicorn跑起來后會提示其pid,如果刷掉了,可以用netstat -plant或什么別的方式來確認(rèn)
話說,用netstat -plant可以看到其進(jìn)程對應(yīng)的程序是python2,看起來gunicorn是python2寫的
我很幸運(yùn)地沒有去官網(wǎng)看文檔,而是直接嘗試了yum install nginx,就安裝成功了(裝python時就裝了不少依賴包)
后來再看官方文檔時,發(fā)現(xiàn)他們沒說這種簡單安裝方式,而是麻煩地再去配置Repository page什么的
我看看自己的版本,是最新的Stable版,攤手
按照這里的辦法沒搞定,無奈網(wǎng)上到處搜
從這里知道可以通過修改nginx.conf文件來完成反向代理的配置,不過文件的位置有點(diǎn)不同,我這里文件在/etc/nginx/目錄,可能是版本不同導(dǎo)致的
打開發(fā)現(xiàn)里面有行include /etc/nginx/conf.d/*.conf;看上去是會導(dǎo)入其他配置文件的樣子
那么我們?nèi)ツ莻€文件夾新建一個.conf文件,于是新建了/etc/nginx/conf.d/test.conf文件,其內(nèi)容如下:
server { listen 8000; server_name flasktest; location / { proxy_pass http://127.0.0.1:8000; } }
改完后運(yùn)行service nginx start發(fā)現(xiàn)報錯
Job for nginx.service failed because the control process exited with error code. See "systemctl status nginx.service" and "journalctl -xe" for details.
于是又到處翻文章,偶然間用netstat -plant查看狀態(tài)時發(fā)現(xiàn)gunicorn正在監(jiān)聽8000端口,心中隱隱覺得可能是這個導(dǎo)致的,關(guān)掉gunicorn試了下發(fā)現(xiàn)報錯消失
和朋友溝通發(fā)現(xiàn)因?yàn)樽约旱鬃硬辉鷮?shí),不知道這個知識點(diǎn):
TCP協(xié)議中,不算某進(jìn)程fork出的子進(jìn)程,或使用共享socket技術(shù)時,同一端口只能有一個進(jìn)程監(jiān)聽
OK,那么把test.conf中端口改成7999,運(yùn)行g(shù)unicorn,啟動nginx服務(wù),在瀏覽器里輸入阿里云這臺云服務(wù)器對應(yīng)的公網(wǎng)IP加:7999
終于看到了熟悉的hello world
至此,部署gunicorn和NGINX基本完成,接下來就是部署博客
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/40557.html
摘要:網(wǎng)上有很多種發(fā)布部署的方式,這里我使用的是發(fā)布。但當(dāng)我部署成功后,我發(fā)現(xiàn)了一個問題。再說回問題當(dāng)我用的命令啟動服務(wù)時,發(fā)現(xiàn)的正則表達(dá)式的路徑轉(zhuǎn)發(fā)規(guī)則發(fā)生了問題。導(dǎo)致訪問地址發(fā)生跳轉(zhuǎn)不正常和錯誤的現(xiàn)象。,下面說回正題,介紹如何部署。 網(wǎng)上有很多種發(fā)布部署flask的方式,這里我使用的是Gunicorn、nginx發(fā)布flask。 先說明一下為什么不使用supervisor,之前我也是按照...
摘要:生產(chǎn)環(huán)境下,自帶的服務(wù)器,無法滿足性能要求。配置前面我們已經(jīng)在系統(tǒng)環(huán)境下安裝了安裝好的二進(jìn)制文件放在文件夾下,接下來使用來管理。參考文章探針安裝部署部署筆記在生產(chǎn)環(huán)境上部署使用詳解本文系工程師編譯整理。 由于字?jǐn)?shù)的限制,其實(shí)本篇文章的全標(biāo)題為 《如何在 virtualenv 環(huán)境下 Django + Nginx + Gunicorn+ Supervisor 搭建 Python Web》...
摘要:生產(chǎn)環(huán)境下,自帶的服務(wù)器,無法滿足性能要求。配置前面我們已經(jīng)在系統(tǒng)環(huán)境下安裝了安裝好的二進(jìn)制文件放在文件夾下,接下來使用來管理。參考文章探針安裝部署部署筆記在生產(chǎn)環(huán)境上部署使用詳解本文系工程師編譯整理。 由于字?jǐn)?shù)的限制,其實(shí)本篇文章的全標(biāo)題為 《如何在 virtualenv 環(huán)境下 Django + Nginx + Gunicorn+ Supervisor 搭建 Python Web》...
摘要:今天介紹一下如何在中為項(xiàng)目搭建環(huán)境。執(zhí)行完后,再執(zhí)行和進(jìn)行編譯和安裝。安裝完成后,即可啟動并訪問首頁驗(yàn)證是否安裝成功。 今天介紹一下如何在ubuntu18.04中為django項(xiàng)目搭建nginx+gunicorn環(huán)境。 具體步驟如下:1.安裝gunicorn: pip install gunicorn2.使用gunicorn啟動django項(xiàng)目: gunicorn 項(xiàng)目名稱.wsgi:...
摘要:寫好項(xiàng)目后,要將項(xiàng)目部署到服務(wù)器上,可以采用,和的方式進(jìn)行部署。安裝虛擬環(huán)境當(dāng)一臺機(jī)器上部署多個項(xiàng)目的時候,各個項(xiàng)目依賴的包可能有沖突,互相影響。使用虛擬環(huán)境可以將各個項(xiàng)目的執(zhí)行環(huán)境隔離,互不影響。 寫好Django項(xiàng)目后,要將項(xiàng)目部署到服務(wù)器上,可以采用nginx,gunicorn和supervisor的方式進(jìn)行部署。 安裝虛擬環(huán)境 當(dāng)一臺機(jī)器上部署多個項(xiàng)目的時候,各個項(xiàng)目依賴的包可...
閱讀 1826·2021-11-11 16:55
閱讀 1452·2019-08-30 15:54
閱讀 769·2019-08-29 15:34
閱讀 2252·2019-08-29 13:11
閱讀 2908·2019-08-26 13:28
閱讀 1877·2019-08-26 10:49
閱讀 992·2019-08-26 10:40
閱讀 2552·2019-08-23 18:21