现成的镜像,已经配置好nginx-gunicorn-flask,可直接部署flask 项目
http://hub-mirror.c.163.com
docker pull danriti/nginx-gunicorn-flask
/usr/share/nginx/www/
这个是nginx默认的目录docker run -it -P --expose 80 --name gunicorn1 -v $PWD/flaskDemo2:/usr/share/nginx/www/flaskDemo2 danriti/nginx-gunicorn-flask
/var/log/nginx
这个是nginx日志目录,可以映射出来docker run -it -P --expose 80 --name gunicorn2 -v $PWD/flaskDemo2:/usr/share/nginx/www/flaskDemo2 -v $PWD/log:/var/log/nginx danriti/nginx-gunicorn-flask
docker exec -it gunicorn1 bash
cd /usr/share/nginx/www/flaskDemo2
gunicorn -w 4 -b wsgi:app
默认访问路径 http://127.0.0.1:8000/app = Flask(__name__)
# -*- coding:utf-8-*-
# wsgi.py
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello_world():
return "name"
@app.route("/register")
def register():
return "hello register"
if __name__ == '__main__':
app.run()
/etc/nginx/sites-available/
目录下有配置文件 flask.confserver {
listen 80;
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;
}
}
TODO: 有时间研究一下自动启动项目