flask应用部署到服务器

flask是我学习的第一个python的web框架,在应用flask写完一个应用后,当然是把它部署到我们的服务器上了。

首先,准备我们部署项目所需要的部分

1.完整的flask项目

2.服务器,或者自己用虚拟机也行,我这里用的是腾讯云,ubuntu16.04

3. nginx,不知道是什么的,自行百度

首先,我们先在服务器上安装nginx,默认已经安装完毕。成功安装nginx的标志就是,浏览器访问该服务器,出现nginx欢迎字样。

1. 把项目打包传输到服务器,成功安装nginx后,会出现/var/www/html目录,将整个项目解压到/var/www/下面

2.我们还要配置好数据库,这里应用的是mysql,默认成功安装了,然后在mysql上创建相关的数据库,在终端进去到项目的根目录,下图是我的项目,目录结构如下,/var/www/mysite_flask

3.在进入到根目录后,执行

python manage.py migration

进行orm的模型映射

python manage.py  upgrade

4.会发现在项目的根目录出现了一个migrations的目录,在数据库上也有了相应的表

5.终端上打开文件

vim /etc/nginx/sites-available/default

加入如下内容

server {
      listen  80;
      server_name localhost; #云服务器的公网地址
root /var/www/html;
location / { try_files $uri @app_name; }
location @app_name{
  include uwsgi_params;
  uwsgi_pass unix:/tmp/uwsgi.sock;
}
    }

5.终端来到项目根目录,执行

python manage.py runserver

会发现,项目已经运行起来了

这时候新开一个终端,uwsgi和nginx联立起来

还是来到项目根目录下,执行

uwsgi -s /tmp/uwsgi.sock -w myapp:isa

正常运行效果如下

6.在浏览器中输入服务器ip加上5000端口号,就能看见你的项目了

原文地址:https://www.cnblogs.com/s42-/p/10230790.html

时间: 2024-10-11 03:00:04

flask应用部署到服务器的相关文章

部署flask到阿里云服务器ECS

比较难的一点是:部署到云服务器上之后,通过公网没法访问. 这就要说回道 本地开发时的一个小细节:通过http://127.0.0.1:5000是可以访问的,但通过http://[本地ip]:5000是没法访问的,当时没注意这点,因此部署到ECS时产生了一个难点. 解决方法是在server.py改一条语句: app.run(host="0.0.0.0", port=5000) 参考资料 1.Python:关于flask项目部署到阿里云服务器步骤详解:https://blog.csdn.n

【笔记】第一次将网站部署到服务器上

前几天和两个朋友一起租了个国外的服务器,自己手头有个域名,打算寒假把flask学了做个网站玩一玩,不过还没开工,下午学了下flask弄了个helloworld,所以迫不及待的想先试一下把它部署到服务器上去. 使用的架构是uwgsi+nginx+flask. nginx是个什么东西呢,我们购买的服务器有一个ip地址,我们3个人有个人的域名需要解析到这个地址,互联网上默认的请求都是通过80端口,然后我们各自的web应用在服务器上需要有自己的端口,那么nginx就把请求转移到对应的服务器端口上去,比如

基于Windows Server 2012 R2部署KMS服务器

基于Windows Server 2012 R2部署KMS服务器 关于Microsoft Windows / Microsoft Office "VLK" 和"MAK"两种激活的异同 "VLK"和"MAK"都是微软为"大客户"量身特定的激活方式.只要实施激活,就是永久激活."VLK"是Volume Licensing Key的缩写.微软对于"VLK"密钥施行"

JBPM(四)——把流程部署到服务器上

当我们的业务流程被设计开发完毕之后,会有许多相关的文件"散落"在工程中,其中包括: 定义流程的JPDL文件 根据图形化流程定义同步生成的流程图片文件(PNG格式) 业务流程中用于人机交互的表单页面文件 事件监听器等用户自定义代码的Java类文件 其他流程资源文件,例如小图标.css样式表.脚本文件.属性文件等 jbpm4支持将流程定义及其相关资源打包一个JAR(Java归档)格式的文件,部署到服务器上(其实就是服务所连接的JBPM数据库中),然后流程定义就可以被执行了. 一.如何将流程

Skype for Business Server 2015系列(三)部署前端服务器-3

1.创建Skype 拓扑 打开"Skype for Business Server 2015 拓扑生成器" 在 拓扑生成器中,选择"新建拓扑".根据提示输入位置和文件名以保存拓扑.为拓扑文件提供一个的名称,单击[确定],并保持文件的后缀扩展名不变(tbxml). 在"定义主域"页上,为组织输入主 SIP 域的名称,然后单击[下一步]. 在"指定其他支持域"页上,输入其他域的名称(如果有),然后单击[下一步]. 在"定

centos 6.2 部署pptp服务器

一.系统环境说明 [[email protected] ~]# uname -a Linux cdit-00007b48 2.6.32-220.17.1.el6.x86_64 #1 SMP Wed May 16 00:01:37 BST 2012 x86_64 x86_64 x86_64 GNU/Linux [[email protected] ~]# cat /etc/issue CentOS release 6.2 (Final)Kernel \r on an \m 二.系统环境检查,查看是

CentOS 6.5下利用Rsyslog+LogAnalyzer+MySQL部署日志服务器

一.简介 LogAnalyzer 是一款syslog日志和其他网络事件数据的Web前端.它提供了对日志的简单浏览.搜索.基本分析和一些图表报告的功能.数据可以从数据库或一般的syslog文本文件中获取,所以LogAnalyzer不需要改变现有的记录架构.基于当前的日志数据,它可以处理syslog日志消息,Windows事件日志记录,支持故障排除,使用户能够快速查找日志数据中看出问题的解决方案. LogAnalyzer 获取客户端日志会有两种保存模式,一种是直接读取客户端/var/log/目录下的

maven指定部署的服务器类型

<!-- 指定部署的服务器类型 --> <plugins> <!-- <plugin> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat6-maven-plugin</artifactId> <version>2.2</version> </plugin> --> <plugin> <

将网站部署到服务器上出现_STORAGE_WRITE_ERROR_问题

用的thinkphp3.2的框架,在本地运行没有问题,部署到服务器上(基于centos的LAMP环境)即报错,报错信息如下(完全看不懂...):求大神帮帮忙~~~~(>_<)~~~~ :(_STORAGE_WRITE_ERROR_:./Application/Runtime/Cache/Home/f8995a0e1afcdadc637612fae5a3b585.php错误位置FILE: /var/www/html/shoppingback/ThinkPHP/Library/Think/Stor