基于Ubuntu16.04的django+uwsgi+nginx安装部署

简介: 基于Ubuntu16.04的django+uwsgi+nginx部署安装

最近由于导师的一点破事,我一个从来没有搞过后台的人来搞后台,由于只会用python,所以没得选,只能由题目的套装。这三个东西的网上教程坑非常之多。我们一步一步来。

首先是一台无瑕,没有被玷污过的新机子。

一、安装虚拟环境

别问为啥要装,装就完事了,ubuntu里面默认的是py2,现在一般都是py3了,按步骤来
安装python3-venv

apt-get install python3-venv

接下来cd到你想去的目录下创建虚拟环境ven(名字比较随意)

python3 -m venv ven

ven/bin中的python是3.5的
接下来激活虚拟环境,cd到ven/bin目录下

source activate

接下来你会看到你命令行的前面有个(ven),这就是激活啦。
退出虚拟环境也得cd到ven/bin目录下

source deactivate


二、安装django

这个简单哈

pip install django

注意要在虚拟环境下这么干

三、安装uwsgi

安装这个需要先装一下其他工具


sudo apt-get install python3-setuptools
sudo apt-get install python3-dev
pip install uwsgi


注意:按照这个时候,其余的教程就会让你测试了,其实这个测试容易出很多的问题,我推荐先不要急着测试,只要pip install uwsgi没有出现问题就暂时不要管这个


四、安装nginx

先更新一下哈

sudo apt-get update

再安装nginx

sudo apt-get install nginx

五、接下来干的事情

首先再项目目录下新建一个uwsgi.ini文件

[uwsgi]
chdir   = /你的路径/项目
module  = 项目名称.wsgi
master  = true
processes = 10
socket  = :8000
vacuum  = true
pythonpath = /你的虚拟环境的路径/lib/python3.5/site-packages/ #这个需要具体调整

然后再新建一个nginx.conf文件

upstream django {
    server 0.0.0.0:8000;
    }
server {
listen 80;
server_name 你的域名或者ip;
charset utf-8;
client_max_body_size 75M;
location /media {
    alias /你的路径/项目/media;  # 指向django的media目录
    }

location /static {
    alias /你的路径/项目/static; # 指向django的static目录
    }

location / {
    uwsgi_pass  django;
    include  uwsgi_params;
}
}

写好之后把这个玩意链接到uwsgi的启动配置文件中

ln -s /你的目录/项目/nginx.conf  /etc/nginx/conf.d/

都搞定之后,重启一下nginx

service nginx restart

cd到你的项目目录下,开启uwsgi

uwsgi -i uwsgi.ini

不出意外大功告成,然后这个时候如果没问题,首先回去在目录下新建run.log文件,然后修改一下uwsgi.ini文件,新增两行

daemonize = /你的路径/项目/run.log
disable-logging = true

这样的话就会将日志信息保存至run.log里面,而且不记录正常信息,要不然就爆了。






相关文章
|
11月前
|
应用服务中间件 网络安全 nginx
手把手教你使用 Docker 部署 Nginx 教程
本文详解Nginx核心功能与Docker部署优势,涵盖镜像拉取、容器化部署(快速、挂载、Compose)、HTTPS配置及常见问题处理,助力高效搭建稳定Web服务。
4448 4
|
应用服务中间件 PHP nginx
今日小结通过aliyun的本地容器镜像部署我的nginx和php环境
简介: 本教程介绍如何基于 Dragonwell 的 Ubuntu 镜像创建一个运行 Nginx 的 Docker 容器。首先从阿里云容器镜像服务拉取基础镜像,然后编写 Dockerfile 确保 Nginx 作为主进程运行,并暴露 80 端口。最后,在包含 Dockerfile 的目录下构建自定义镜像并启动容器,确保 Nginx 在前台运行,避免容器启动后立即退出。通过 `docker build` 和 `docker run` 命令完成整个流程。
710 25
今日小结通过aliyun的本地容器镜像部署我的nginx和php环境
|
11月前
|
应用服务中间件 Linux nginx
在虚拟机Docker环境下部署Nginx的步骤。
以上就是在Docker环境下部署Nginx的步骤。需要注意,Docker和Nginix都有很多高级用法和细节需要掌握,以上只是一个基础入门级别的教程。如果你想要更深入地学习和使用它们,请参考官方文档或者其他专业书籍。
505 5
|
Ubuntu 安全 应用服务中间件
详细指南:配置Nginx服务器在Ubuntu平台上
以上步骤涵盖了基本流程:从软件包管理器获取 Ngnix, 设置系统服务, 调整UFW规则, 创建并激活服务器块(也称作虚拟主机), 并进行了初步优化与加固措施。这些操作都是建立在命令行界面上,并假设用户具有必要权限(通常是root用户)来执行这些命令。每个操作都有其特定原因:例如,设置开机启动确保了即使重启后也能自动运行 Ngnix;而编辑server block则定义了如何处理进入特定域名请求等等。
602 18
|
Ubuntu 安全 应用服务中间件
详细指南:配置Nginx服务器在Ubuntu平台上
以上步骤涵盖了基本流程:从软件包管理器获取 Ngnix, 设置系统服务, 调整UFW规则, 创建并激活服务器块(也称作虚拟主机), 并进行了初步优化与加固措施。这些操作都是建立在命令行界面上,并假设用户具有必要权限(通常是root用户)来执行这些命令。每个操作都有其特定原因:例如,设置开机启动确保了即使重启后也能自动运行 Ngnix;而编辑server block则定义了如何处理进入特定域名请求等等。
1000 17
|
弹性计算 运维 监控
快速部署 Nginx 社区版
Nginx是一个高性能的HTTP和反向代理服务器。Nginx在计算巢上提供了社区版服务,您无需自行配置云主机,即可在计算巢上快速部署Nginx服务、实现运维监控,从而方便地基于Nginx搭建您自己的应用。本文介绍使用如何通过计算巢快速部署Nginx社区版。
快速部署 Nginx 社区版
|
应用服务中间件 Linux 网络安全
技术指南:如何把docsify项目部署到基于CentOS系统的Nginx中。
总结 与其他部署方法相比,将docsify项目部署到基于CentOS系统的Nginx中比较简单。以上步骤应当帮助你在不花费太多时间的情况下,将你的项目顺利部署到Nginx中。迈出第一步,开始部署你的docsify项目吧!
544 14
|
负载均衡 Ubuntu 应用服务中间件
nginx修改网站默认根目录及发布(linux、centos、ubuntu)openEuler软件源repo站点
通过合理配置 Nginx,我们可以高效地管理和发布软件源,为用户提供稳定可靠的服务。
2553 13
|
中间件 应用服务中间件 nginx
Nginx+uWSGI+Django原理
Nginx+uWSGI+Django原理
|
前端开发 JavaScript 应用服务中间件
使用nginx部署网站
使用nginx部署网站