1. VM安装Ubuntu server 14.04,系统安装完成后,首先安装pip工具方便之后的包安装,此处需先使用 apt-get install update,apt-get install upgrade
apt-get install update(同步 /etc/apt/sources.list 和 /etc/apt/sources.list.d 中列出的源的索引,这样才能获取到最新的软件包)
apt-get install upgrade (升级已安装的所有软件包,升级之后的版本就是本地索引里的,因此,在执行 upgrade 之前一定要执行 update, 这样才能是最新的)
2. apt-get install pip 安装pip工具
3. pip install virtualenv 安装python虚拟环境工具,由于不同的项目可能会有不同的依赖包或版本,使用虚拟环境可以完美的解决这些冲突,
使用virtualenv的包括:
  • 在没有权限的情况下安装新套件
  • 不同的应用可以使用不同的包/版本
  • 不同应用依赖包的升级互不影响
4. 安装git并拉取flask项目
5. 进入项目目录,安装python虚拟环境,virtualenv env-name
6. 启动虚拟环境 source env-name/bin/activate,
7. 安装uwsgi(pip isntall uwsgi)
8. 安装flask项目的依赖库,pip install -r requirement.txt
9. 根据flask项目下主文件(含有APP),进行uwsgi相关配置config.ini,配置后使用 uwsgi config.ini验证配置是否正确
master = true
#虚拟环境目录
home = venv
#flask下主文件
wsgi-file =manage.py
callable = app
#使用http或socket配置端口
socket = :3031
#处理器数
processes = 1
#线程数
threads = 1
buffer-size = 32768
plugin = python

  

10. 安装Nginx apt-get install nginx,修改(/etc/nginx/sites-enabled/)目录下的default文件
server {
listen ;
server_name default; #公网地址
charset utf-; location / {
include uwsgi_params;
uwsgi_pass 127.0.0.1:; #指向uwsgi 所应用的内部地址,所有请求将转发给uwsgi 处理
uwsgi_param UWSGI_PYHOME /home/user/flask_task/venv; # 指向虚拟环境目录
uwsgi_param UWSGI_CHDIR /home/user/flask_task; # 指向网站根目录
uwsgi_param UWSGI_SCRIPT manage:app; # 指定启动程序
uwsgi_read_timeout ;
}
}
11 . 重启Nginx sudo service nginx restart
12. 外部机器直接访问虚拟机IP,即可打开项目

通过VM虚拟机安装Ubuntu server部署flask项目的更多相关文章

  1. vmware 10虚拟机安装ubuntu server 14.04

    -開始安装ubuntu server- 1.首先是安装系统时的语言,推荐选择English 然后安装系统 这里选择语言非常重要,我開始选择了中文,安装完毕后会乱码,所以推荐选择英文 由于在中国.所以选 ...

  2. Oracle VM VirtualBox虚拟机安装Ubuntu Server

    安装过程如下:原文转自:http://www.linuxidc.com/Linux/2012-04/59368p8.htm

  3. VM虚拟机安装Windows Server 2008操作系统

    镜像链接:https://pan.baidu.com/s/1_Hv6U3xulqkkKzCYXmNvNQ 提取码:uwph Windows 2008 版本 有标准版.有企业版 群集 双击热备 clus ...

  4. 在Ubuntu下部署Flask项目

    FlaskDemo 命名为test.py # coding=utf-8 from flask import Flask app = Flask(__name__) @app.route("/ ...

  5. win10 下使用虚拟机安装ubuntu及其网络配置

    通过虚拟机安装ubuntu 我的机器是64位的win10系统,使用的虚拟机VMware workstation 12 pro 安装的是ubuntu 14.04, 网上教程很多,很详细也有有效 win1 ...

  6. 为部署ASP.NET Core准备:使用Hyper-V安装Ubuntu Server 16.10

    概述 Hyper-V是微软的一款虚拟化产品,和VMWare一样采用的hypervisor技术.它已经被内嵌到Win10系统内,我们只需要进行简单的安装即可.但是前提是要确保你的机器已经启用虚拟化,可以 ...

  7. 虚拟机Vmware成功安装Ubuntu Server 16.04中文版

    最近想在Linux下学习Python的爬虫开发技术,经过认真考虑优先选择在在Ubuntu环境下进行学习Python的开发,虽然Ubuntu Server 16.04 LTS版本已经集成了Python ...

  8. 在虚拟机中安装Ubuntu Server 15.04

    学Linux,上红联! 红联Linux门户|Linux通用技术|Linux发行版技术|Linux企业应用|Linux实验室|红联Linux论坛 Linux系统教程 Linux入门 Linux管理 Li ...

  9. NET Core准备:使用Hyper-V安装Ubuntu Server 16.10

    NET Core准备:使用Hyper-V安装Ubuntu Server 16.10 概述 Hyper-V是微软的一款虚拟化产品,和VMWare一样采用的hypervisor技术.它已经被内嵌到Win1 ...

随机推荐

  1. linux下 git 安装

    1.使用yum安装 yum -y install git yum remove git 2.源代码安装 a.下载git源码  网址为 https://github.com/git/git/releas ...

  2. 有点难度的JS面试题

    自己总结了一些JS面试题 希望能够帮助正在找工作的程序猿(●´∀`●) 1.js 实现一个函数对javascript中json 对象进行克隆 var oldObject ="sdf" ...

  3. (转)关于java.lang.UnsupportedClassVersionError解决方法总结

    背景:在服务器部署程序是后总是怀疑jdk安装不正确,所以打算运行一个小程序进行测试. 通过这样一个方法 ,可以测试jdk是否正确安装. 1 问题描述 首先编写了个Hello.java的代码: 这里我本 ...

  4. (转)上传jar包到nexus私服

    场景:在使用私服Nexus时候经常需要上传jar包,但是对上传jar包的方式不是很熟悉,所以很有必要学习下. 1 通过网页上传 GAV Definition:选择GAV Parameters 输入JA ...

  5. (转)Java线程:线程的同步与锁

      Java线程:线程的同步与锁       一.同步问题提出   线程的同步是为了防止多个线程访问一个数据对象时,对数据造成的破坏. 例如:两个线程ThreadA.ThreadB都操作同一个对象Fo ...

  6. php 设计模式之策略模式

    策略模式:定义算法,并将其封装起来,让它们之间可以互相替换,此模式让算法的变化独立于使用算法的客户. 步骤:1.抽象策略角色:定义接口或抽象类 2.具体策略角色:实现该接口(抽象类),即具体的算法实现 ...

  7. 为什么Java大数据是最火爆的编程语言?

    未来10年将是大数据,人工智能爆发的时代,到时将会有大量的企业需要借助大数据,而Java最大的优势就是它在大数据领域的地位,目前很多的大数据架构都是通过Java来完成的. 在这个Android.iOS ...

  8. EF 数据库迁移(Migration)

    Update-Database -ConnectionStringName "MyConnectionString"

  9. 双向循环链表(C语言描述)(四)

    下面以一个电子英汉词典程序(以下简称电子词典)为例,应用双向循环链表.分离数据结构,可以使逻辑代码独立于数据结构操作代码,程序结构更清晰,代码更简洁:电子词典的增.删.查.改操作分别对应于链表的插入. ...

  10. 福利 c++ 标准头文件大全

    #include<cmath> #include<math.h> #include<ctype.h> #include<algorithm> #incl ...