使用virtualenv, uwsgi, nginx来布署flask
2024-09-04 00:04:06
本文讲述了怎样使用virtualenv, uwsgi, nginx来布署flask的步骤。
升级软件包
运行下面命令,保证你的机器安装了最新的软件包。
sudo apt-get update
sudo apt-get upgrade
安装python和virtualenv
sudo apt-get install build-essential python-dev python-pip
sudo pip install virtualenv
创建存放站点的文件夹
比如,在/home/gzlihao/webservice文件夹下创建mysite文件夹
mkdir mysite
配置virtualenv和安装flask, uwsgi
进入 mysite 文件夹,然后创建虚拟环境 .env,激活虚拟环境。然后安装flask和uwsgi。
cd mysite
virtualenv .env
source .env/bin/activate
pip install flask
pip install uwsgi
在mysite文件夹下创建hello.py
hello.py的内容例如以下:
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello():
return "Hello World!"
if __name__ == "__main__":
app.run(host='0.0.0.0', port=8080)
须要注意的是,app.run()
仅仅是开发时測试使用,故须要放置在if __name__ == "__main__"
下,这样uwsgi才不会运行app.run()
方法。
而host须要设置为0.0.0.0,表示让flask监听机器的全部ip地址的8080端口。
配置uwsgi
添加配置文件uwsgi.ini,内容例如以下:
[uwsgi]
chdir=/home/gzlihao/webservice/mysite
home=/home/gzlihao/webservice/mysite/.env
module=hello
callable=app
master=true
processes=2
socket=%(chdir)/mysite.sock
chmod-socket=666
logfile-chmod=644
daemonize=%(chdir)/uwsgi.log
uid=gzlihao
gid=gzlihao
最新文章
- C语言 · Interval · 求矩阵元素和
- HashMap &; HashTable的区别
- Intellij IDEA工具Java web 环境搭建
- IOS密码加密
- MySQL不能插入中文字符及中文字符乱码问题
- 一个PHP写的简单webservice服务端+客户端
- EditPlus使用心得及常用快捷键
- 【转】Ajax 基础学习
- JQuery中的AJAX参数详细介绍
- Hive 创建和生成Rcfile 和SequenceFile格式的表
- Xamarin原生跨平台概述(精简概述,命中要害。PS:无图)
- 老李分享:android app自动化测试工具合集
- C#实现阿拉伯数字(小写金额)到大写中文(大写金额)的转换
- TV 丽音(NICAM)功能
- HBuilder git使用-建立仓库,邀请用户
- jfinal afterJFinalStart中执行长久循环操作的解决方案:创建新线程
- chrome浏览器onunload方法无法执行window.location.href
- freeswitch设置支持视频语音编码
- gulp 使用案例
- codevs 3022 西天收费站
热门文章
- [SQL server] IF ELSE 和 CASE WHEN 的用法
- Leetcode 357.计算各个位数不同的数字个数
- CSU-1336: Interesting Calculator,最短路思想!
- 九度oj 题目1201:二叉排序树
- PAT天梯赛练习题——L3-007. 天梯地图(多边权SPFA)
- BZOJ 3450 Tyvj1952 Easy ——期望DP
- UOJ 274 【清华集训2016】温暖会指引我们前行 ——Link-Cut Tree
- wsgi 简介
- android开发里遇到的坑——eclipse项目导入android studio以后Run按钮灰色
- *Codeforces961G. Partitions