uwsgi, nginx, flask - быстрый старт
###uwsgi, nginx, flask - быстрый старт###
Устанавливаем необходимые пакеты
# apt-get install uwsgi uwsgi-plugin-python nginx python-pip
# pip install virtualenv
Создаем виртуальное окружение и устанавливаем Flask
# mkdir /home/ajib6ept
# cd /home/ajib6ept
# virtualenv myflaskenv
# source myflaskenv/bin/activate
# pip install flask
Пишем простой пример приложения
# nano myflaskfile.py
from flask import Flask
app = Flask(__name__)
@app.route("/")
def index():
return "It works!"
if __name__ == "__main__":
app.run()
Выходим
# deactivate
Настраиваем uwsgi
# nano /etc/uwsgi/apps-available/flaskuwsgi.ini
[uwsgi]
socket = /tmp/flask.sock
pythonpath = /home/ajib6ept/
module = myflaskfile:app
plugins = python27
virtualenv = /home/ajib6ept/myflaskenv/
# ln -s /etc/uwsgi/apps-available/flaskuwsgi.ini /etc/uwsgi/apps-enabled/flaskuwsgi.ini
Настраиваем nginx
# nano /etc/nginx/sites-available/flask.conf
upstream flask_serv {
server unix:/tmp/flask.sock;
}
server {
listen 80;
server_name ajib6ept.com;
location / {
uwsgi_pass flask_serv;
include uwsgi_params;
}
}
# ln -s /etc/nginx/sites-available/flask.conf /etc/nginx/sites-enabled/flask.conf
Перезапускаем, ошибок быть не должно
service nginx restart
service uwsgi restart
Тестировалось на digitalocean.com [Debian 7.0 x64]