在DigitalOcean的服務(wù)器上部署flaskblog應(yīng)用
在DigitalOcean上部署了flaskblog,項目雖小,部署中也學到了很多東西。
操作系統(tǒng)選擇的是Ubuntu14.04,原因就是平時自己主要使用這個版本,順手而已,所以你自己可以根據(jù)需要選擇合適的linux版本。
部署方案:
Virtualenv+Gunicorn+Nginx+Supervisor
從這里下載項目的代碼flaskblog, 工程中帶有簡單的配置文件參考。
可以先訪問flaskblog看一下。
注意
本文中使用Ubuntu14.04 64位主機, 創(chuàng)建一個名為xin的用戶,進行部署。
本文重點部署,所有l(wèi)inux的相關(guān)操作不做詳細介紹。
部署目錄是(/home/xin/www/flaskblog),所以請注意配置文件中的目錄。
環(huán)境
系統(tǒng):Ubuntu 14.04 64
Web Server: Nginx
虛擬環(huán)境: Virtualenv
WSGI Server: Gunicorn
數(shù)據(jù)庫: MySQL
Monitor: Supervisor
使用supervisor主要是監(jiān)控gunicorn的運行,保證服務(wù)器的可以持續(xù)運行。
安裝
安裝軟件
$ sudo apt-get install python-pip $ sudo apt-get install python-dev $ sudo pip install virtualenv $ sudo apt-get install mysql-server $ sudo apt-get install libmysqlclient-dev $ sudo apt-get install nginx $ sudo apt-get install supervisor
下載工程并開啟虛擬環(huán)境
使用git下載代碼到(/home/xin/www/flaskblog)
$ git clone https://github.com/defshine/flaskblog.git $ cd flaskblog
啟動虛擬環(huán)境,安裝工程依賴
$ virtualenv venv $ source venv/bin/activate (venv)$ pip install -r requirements.txt
如何退出虛擬環(huán)境
(venv)$ deactivate
數(shù)據(jù)庫
在MySQL數(shù)據(jù)庫中創(chuàng)建數(shù)據(jù)庫(flaskblog),修改 config.py中的數(shù)據(jù)庫的配置
初始化數(shù)據(jù)庫并創(chuàng)建管理員用戶
(venv)$ python manage.py create_db (venv)$ python manage.py create_user -u admin -p 123456
開啟監(jiān)控
根據(jù)自己的情況,編輯工程下的supervisor配置文件(flaskblog.conf),然后復(fù)制到系統(tǒng)目錄中
$ sudo cp flaskblog.conf /etc/supervisor/conf.d/
重新載入配置文件,并啟動flaskblog
$ sudo supervisorctl reload $ sudo supervisorctl start flaskblog
查看運行狀態(tài)
$ sudo supervisorctl status
Nginx
修改nginx的配置文件(flaskblog),然后復(fù)制到系統(tǒng)目錄中去,并創(chuàng)建軟鏈接。重啟nignx。
$ sudo cp flaskblog /etc/nginx/site-available/ $ cd /etc/nginx/site-enabled $ sudo ln -s /etc/nginx/site-avalaible/flaskblog . $ sudo service nginx reload $ sudo service nginx restart
查看nginx狀態(tài)
$ sudo service nginx status
然后,就可以通過ip地址訪問了。當然,配置好域名,訪問起來更好。
flaskblog這個小項目,剛剛有個小雛形,后續(xù)還可以開發(fā)一些小特性。
相關(guān)文章
一文教會你用Python獲取網(wǎng)頁指定內(nèi)容
Python用做數(shù)據(jù)處理還是相當不錯的,如果你想要做爬蟲,Python是很好的選擇,它有很多已經(jīng)寫好的類包,只要調(diào)用即可完成很多復(fù)雜的功能,下面這篇文章主要給大家介紹了關(guān)于Python獲取網(wǎng)頁指定內(nèi)容的相關(guān)資料,需要的朋友可以參考下2022-03-03centos+nginx+uwsgi部署django項目上線
本文主要介紹了centos+nginx+uwsgi部署django項目上線,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2022-07-07Python全角與半角之間相互轉(zhuǎn)換的方法總結(jié)
全角與半角轉(zhuǎn)換在處理漢語語料中會經(jīng)常出現(xiàn),這里分別說明漢字、數(shù)字、字母的unicode編碼范圍,下面這篇文章主要給大家介紹了關(guān)于Python全角與半角之間相互轉(zhuǎn)換的相關(guān)資料,需要的朋友可以參考下2022-03-03