flask 部署阿里云

  • 1.上周入手了阿里云,所以把前段時間寫的flask程序部署到阿里云上,之前是部署到heroku上的,下面介紹下如何部署到阿里云上。

  • 2.阿里云部署后的鏈接為:http://123.57.132.125, 歡迎大家使用。

  • 3.把flask工程中的文件通過scp命令拷貝到阿里云下,我的工程下的app包、migrations包、config.py、manager.py和requirements.txt通過命令例如scp -r xxx(需要拷貝的文件) root@xxxxxx(阿里云ip):/(你希望安裝的目錄)

  • 4.來到拷貝到的阿里云目錄下,建立虛擬壞境virtualenv venv ,激活虛擬壞境. venv/bin/activate。安裝工程所有需要模塊pip install -r requirements.txt

  • 5.在阿里云的/etc/init目錄下新建一個配置文件例如sudo nano /etc/init/blog.conf,該文件可以在虛擬機(jī)打開時自動執(zhí)行flask web程序,在該文件內(nèi)寫入:

 description "My Blog service"

 start on runlevel [2345]
 stop on runlevel [!2345]

 respawn
setuid root
setgid www-data

 env PATH=/root/flask/venv/bin  # 壞境的路徑
chdir /root/flask/             # 工作目錄 

 exec gunicorn -w 4 -b 127.0.0.1:8000 manager:app # 啟動web服務(wù)器
  • 6.啟動blog.conf,輸入命令sudo service blog start,查看是否啟動成功。

  • 7.配置nginx反向代理服務(wù)器,如果阿里云沒有安裝nginx,用apt-get install nginx 命令安裝下,修改/etc/nginx/site-available/default文件,修改如下:

 # /ect/nginx/sites-available/default

 server {
    listen 80;
    server_name 10.211.55.10;

    location / {
        proxy_pass http://127.0.0.1:8000;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
  }
  • 8.重新啟動nginx,輸入命令sudo service nginx restart

  • 9.安裝postgresql,apt-get install postresql,創(chuàng)建數(shù)據(jù)庫輸入命令createdb blogdb

  • 10.以上步驟都成功的話就可以部署你的flask程序了。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容