[TOC]
# 1.安装pip
```
sudo apt-get update
sudo apt-get install python-pip
```
# 2.使用pip 安装virtualenv 和 virtualenvwrapper
```
sudo pip install virtualenv virtualenvwrapper
```
# 3.配置环境变量
```
echo "export WORKON_HOME=~/Env" >> ~/.bashrc
echo "source /usr/local/bin/virtualenvwrapper.sh" >> ~/.bashrc

# 如果是zsh
# echo "export WORKON_HOME=~/Env" >> ~/.zshrc
# echo "source /usr/local/bin/virtualenvwrapper.sh" >> ~/.zshrc
```
# 4.配置生效
```
source ~/.bashrc

# 如果是zsh
#source ~/.zshrc
```
# 5.创建虚拟目录

```
# python 2.7 默认
mkvirtualenv python_health

# 指定 python 3.5
mkvirtualenv -p /usr/bin/python3.5 python_mall

```
# 6.安装django 等其他包
```
# pip install django
# ... ...
pip install -r requirements.txt
```
# 7.退出virtualenv环境
```
deactivate
```
如果您想再次进入可以` workon python_health
# 8.安装uWSGI
```
sudo apt-get install python-dev
sudo pip install uwsgi
```
# 9.设置配置文件
```
sudo mkdir -p /etc/uwsgi/sites
cd /etc/uwsgi/sites
```
# 10.编写项目ini文件
```
sudo vi python_health.ini
```
```
[uwsgi]
project = python_health
uid = teresa
base = /home/%(uid)

chdir = %(base)/%(project)
home = %(base)/Env/%(project)
module = %(project).wsgi:application

master = true
processes = 5

socket = /run/uwsgi/%(project).sock
chown-socket = %(uid):www-data
chmod-socket = 660
vacuum = true
```
# 11. 创建系统unit file 为uWSGI
```
sudo vi /etc/systemd/system/uwsgi.service
```
```
[Unit]
Description=uWSGI Emperor service

[Service]
ExecStartPre=/bin/bash -c 'mkdir -p /run/uwsgi; chown teresa:www-data /run/uwsgi'
ExecStart=/usr/local/bin/uwsgi --emperor /etc/uwsgi/sites
Restart=always
KillSignal=SIGQUIT
Type=notify
NotifyAccess=all

[Install]
WantedBy=multi-user.target
```
# 12.配置nginx
```
sudo apt-get install nginx
sudo vi /etc/nginx/sites-available/python_health
```

```
server {
listen 80;
server_name baigedata.cn;
location = /favicon.ico { access_log off; log_not_found off;}
location /static/ {
root /home/teresa/python_health;
}
location /media/ {
root /home/teresa/python_health;
}
location / {
include uwsgi_params;
uwsgi_pass unix:/run/uwsgi/python_health.sock;
}
}
```
# 13.创建软连接到enabled目录
```
sudo ln -s /etc/nginx/sites-available/python_health /etc/nginx/sites-enabled
```
重复一遍检查是否存在
# 14.重启nginx
```
sudo systemctl restart nginx
```
# 15 启动uwsgi
```
sudo systemctl start uwsgi
```
# 16 自动启动
```
sudo systemctl enable nginx
sudo systemctl enable uwsgi
```

django2.0 uwsgi nginx的更多相关文章

  1. CentOS7 + Django2.1 + uwsgi + nginx配置

    假设已经可以运行Django项目,可以runserver.也已经安装了uwsgi和nginx 现在需要进行配置. 刚开始进行uwsgi测试就不行,提示bash:'uwsgi' Command not ...

  2. CentOS安装python3.5.0+uwsgi+nginx

    1安装编译工具 yum install zlib-devel bzip2-devel openssl-devel python-devel kernel-devel libffi-devel ncur ...

  3. 基于centos7+nginx+uwsgi+python3+django2.0部署Django项目

    0.序言 本文讲解如何基于centos7+nginx+uwsgi+python3+django2.0把windows上的本地项目部署到云服务器上. 本文服务器上的django项目和虚拟环境的路径将建立 ...

  4. 10 腾讯云、django2.0、uwsgi、mysql、nginx 部署

    1.腾讯云 操作系统 Ubuntu Server 16.04.1 LTS 64位 获取root权限 ubuntu@VM---ubuntu:~$ sudo passwd root Enter new U ...

  5. Python 3之Django2部署(centos7+nginx+python3+django2.0)

    前置工具,系统为centos7.5,为了方便管理,可以安装宝塔免费版本 首先, yum install -y wget && wget -O install.sh http://dow ...

  6. Django + Uwsgi +Nginx生产环境部署

    python manage.py runserver 0.0.0.0:80 ,一定不要用这个轻量级Server作为你的生产环境下的Server,因为它只能用于开发自测阶段.它既没有安全审计功能,而且又 ...

  7. 在阿里云Centos7.6中部署nginx1.16+uwsgi2.0.18+Django2.0.4

    上次在网上找了一个在阿里云Centos7.6中部署nginx1.16+uwsgi2.0.18+Django2.0.4的文档,可能是这个文档不是最新版的,安装的时候遇到了很多问题, 最后跟一个大神要了一 ...

  8. Django 部署 uwsgi + nginx + supervisor

    Django 部署 uwsgi + nginx + supervisor https://hacpai.com/article/1460607620615?p=1&m=0 zonghua • ...

  9. Cenos(6.6/7.1)下从源码安装Python+Django+uwsgi+nginx到写nginx的环境部署(一)

    梳理下这几个的关系: centos是redhat的社区版操作系统. Python2.7.5是开发语言(centos6.5下自带的python是2.6.6版本,所以需要源码更新,而centos7.1下面 ...

随机推荐

  1. Zabbix部署-LNMP环境

    原文发表于cu:2016-05-05 参考文档: LNMP安装:http://www.osyunwei.com/archives/7891.html 一.环境 Server:CentOS-7-x86_ ...

  2. openvpn部署

    原文发表于cu:2016-03-29 参考文档: 安装:http://qicheng0211.blog.51cto.com/3958621/1575273 安装:http://www.ipython. ...

  3. JAVA学习笔记--字符串概述

    一.String类 String类代表字符串,是由字符构成的一个序列.创建String对象的方法很简单,有以下几种: 1)用new来创建: String s1 = new String("m ...

  4. python3【基础】-字符串 常用的方法

    字符串一个最重要的特性就是不可修改. name.capitalize() 首字母大写 name.casefold() 大写全部变小写 name.center(50,"-") 输出 ...

  5. 子元素设置margin-top后,父元素跟随下移的问题

    子元素设置margin-top后,父元素跟随下移的问题 <!DOCTYPE html> <html lang="en"> <head> < ...

  6. 关于XML文档操作类

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.X ...

  7. 《linux内核分析》 第二周

    20135130 王川东 计算机三个“法宝”:存储程序计算机.函数调用堆栈和中断机制 深入理解函数调用堆栈: 堆栈是C语言运行时必须的一个记录调用路径和参数的空间: 作用包括: 函数调用框架: 保存参 ...

  8. jQuery之过滤选择器

    在原有选择器匹配的元素中进一步进行过滤的选择器 * 基本 * 内容 * 可见性 * 属性 需求 1. 选择第一个div 2. 选择最后一个class为box的元素 3. 选择所有class属性不为bo ...

  9. HTMLA内联框架

    <head> <meta charset="utf-8" /> <title>内联框架</title> </head> ...

  10. 0302借软件工程触IT

         没有不想学好的学生,也没有选择计算机软件专业后不想过能进军IT的行业的.就对于自己情况来说,大学选择计算机商业软件专业学习也有一年多时间了,未接触专业知识前IT是一个高大上的向往,在初学C语 ...