通過(guò)pip安裝必要的包,比如flask、opencv-python、opencv-contrib-python、plotly等。
通過(guò)gunicorn來(lái)啟動(dòng)flask應用,使用方法見(jiàn):flask下 gunicorn在Python中的使用。
Gunicorn-配置詳解(注意這個(gè)地方踩了一個(gè)坑,主要是因為自己對網(wǎng)絡(luò )編程不熟:gnicorn會(huì )使用多線(xiàn)程,而自己編寫(xiě)的程序中使用的是傳統的Python的全局變量,而沒(méi)有引用flask的那些與request、context相關(guān)的全局變量,導致在程序運行時(shí)每點(diǎn)一下按鈕,會(huì )出現不同結果。)
一個(gè)較詳細的部署教程見(jiàn):通過(guò)Gunicorn部署flask應用(阿里云服務(wù)器:Ubuntu 16.04)中間出現了以下幾個(gè)問(wèn)題,并給出解決方法:
(1)導入opencv時(shí),報錯:ImportError: libSM.so.6: cannot open shared object file: No such file or directory
ImportError: libXrender.so.1: cannot open shared object file: No such file or directory
原因是:服務(wù)器在安裝時(shí)沒(méi)有安裝圖形庫。解決方法:apt-get install libsm6 libxrender1
參考見(jiàn)下面鏈接:服務(wù)器opencv-python使用問(wèn)題及解決
(2)在執行到imgproc時(shí),出現:TypeError: Expected cv::UMat for argument 'M',懷疑是python2.7的鍋,所以重新配置了pipenv,使用python3環(huán)境就好了。以下是具體配置過(guò)程:
首先需要升級一下,否則阿里云找不到pip3:apt-get update
然后安裝pip3:apt-get install python3-pip
然后使用pip3安裝pipenv pip3 install pipenv
使用pipenv創(chuàng )建虛擬環(huán)境時(shí),指定python版本:pipenv --python 3 install
(3)啟動(dòng)了flask服務(wù)器,但是外部無(wú)法連接,總是“time out”:
這是因為阿里云默認只開(kāi)啟幾個(gè)端口,如果需要額外的端口,需要自己去防火墻那開(kāi)啟。
參考見(jiàn):在ecs上啟動(dòng)flask應用后,無(wú)法通過(guò)公網(wǎng)ip訪(fǎng)問(wèn)網(wǎng)站。
以上就是如何部署阿里云服務(wù)器的相關(guān)方法,希望能幫助到大家。
Copyright ? 2013-2020. All Rights Reserved. 恒訊科技 深圳市恒訊科技有限公司 粵ICP備20052954號 IDC證:B1-20230800.移動(dòng)站