Ubuntu16.04配置Django服务器环境
本环境是使用Ubuntu16.04+Django2.1.0+python3.6+uwsgi+nginx进行配置
1. 安装python3.6
Ubuntu16.04中原本安装的是python3.5,但是我们运行环境使用python3.6比较好,有的库3.5是用不了的,安装过程如下:
首先安装python3.6,在terminal中输入
sudo apt-get install software-properties-common
sudo add-apt-repository ppa:jonathonf/python-3.6 #如果这个访问不了的话就换成这个 sudo add-apt-repository ppa:fkrull/deadsnakes
sudo apt-get update
sudo apt-get install python3.6
现在在命令行中输入python3得到的python版本仍然是python3.5,所以我们需要一处原来的快捷方式
cd /usr/bin
rm python3
然后再创建快捷方式
ln -s python3.6 python3
输入python3可以得到我们想要的结果

然后在terminal中输入如下命令安装pip3即可
apt-get install python3-pip

pip3 install django==2.1.0
2. 安装git
因为我们需要完成网站代码版本管理,也是为了能够比较方便地更新服务器代码,所以我们在服务器上安装git
首先在terminal中直接输入
sudo apt-get install git
安装好之后需要设置邮箱和用户名
git config --global user.name "Your Name"
git config --global user.email "email@example.com"
如果你的项目是私有项目的话还需要生成SSH公钥,具体请点击这里查看教程。
3. 安装MySQL
我们后端的数据库使用的是mysql,在ubuntu上安装比较简单,只需要几条命令即可。
sudo apt-get install mysql-server
apt-get install mysql-client
sudo apt-get install libmysqlclient-dev
现在在terminal中输入mysql可以直接进入mysql,接下来我们要设置密码,首先进入进入mysql,然后输入如下代码
use mysql;
update user set authentication_string=PASSWORD("这里输入你要改的密码") where User='root'; #更改密码
update user set plugin="mysql_native_password"; #如果没这一行可能也会报一个错误,因此需要运行这一行
flush privileges; #更新所有操作权限
exit
现在在terminal中输入
mysql -u root -p
然后输入你刚刚设置的密码即可登录进数据库,加下来我们要配置允许数据库进行远程连接,方便我们进行调试
mysql -u root -p
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%'IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf //注释掉bind-address = 127.0.0.1
service mysql restart
现在你就可以远程连接数据库了。(记得打开服务器3306安全组)
4. 安装uwsgi
直接pip3安装就可以
sudo apt-get install python3.6-dev # 因为我们之前安装的是python3.6,所以这里安装python3.6-dev
pip3 install uwsgi
接下来测试uwsgi是否能使用,实现使用git将你的项目clone到home文件夹中,然后在terminal中执行如下命令
uwsgi --chdir 你的项目路径 --http :8001 --module 你的项目名称.wsgi:application
这时候打开 你的IP:8001,如果打不开,请开放8001安全组,接下来再打开网页的话应该是可以正常访问的
5.安装node
如果项目前端使用的是vue,还要安装nodejs
sudo apt-get install nodejs
sudo apt-get install python3.6-gdbm # 与你装的python版本相同
sudo apt install nodejs-legacy
sudo apt-get install npm
npm config set registry http://registry.npm.taobao.org/
npm install -g @vue/cli
6. 安装nginx
sudo apt-get install -y python3.6-dev
apt install nginx
等待一会就可以安装完毕,安装完成之后执行如下命令
cd /etc/nginx/sites-enabled/
sudo rm default
cd ..
cd sites-available/
vim mysite.conf
在打开的文件中输入如下内容
server {
listen 443;
server_name mysite;
charset utf-8;
client_max_body_size 75M;
location /static {
alias /home/你的项目名称/static;
}
location /media {
alias /home/你的项目名称/media;
}
location / {
uwsgi_pass 127.0.0.1:8001;
include /etc/nginx/uwsgi_params; # the uwsgi_params file you installed
}
}
然后再继续输入命令:
cd /home
mkdir mysite_uwsgi
cd mysite_uwsgi
vim mysite.ini
在打开的文件中输入如下内容
[uwsgi]
chdir = /home/你的项目名称
module = 你的项目名称.wsgi:application
master=True
processes = 4
harakiri = 60
max-requests = 5000
socket = 127.0.0.1:8001
uid = 1000
gid = 2000
pidfile = /home/mysite_uwsgi/master.pid
deamonize=/home/mysite_uwsgi/mysite.log
vacuum=True
这个时候启动uwsgi,输入
uwsgi --ini /home/mysite_uwsgi/mysite.ini
运行成功之后再输入
ps -aux | grep uwsgi
若进程显示如图所示,则表示配置成功

再执行如下命令
ln -s /etc/nginx/sites-available/mysite.conf /etc/nginx/sites-enabled/mysite.conf
service nginx restart
这个时候访问你的ip应该就能正常访问了
Ubuntu16.04配置Django服务器环境的更多相关文章
- 【.net core 跨平台】第一步 在Ubuntu16.04 配置.net core环境
本次使用VMware10.0.4工具安装Ubuntu16.04系统并配置.net core环境 Ubuntu 16.04 desktop下载地址:http://releases.ubuntu.co ...
- ubuntu16.04 配置opensips服务器并编译pjsip测试
一.版本相关 1) ubuntu版本: 16.04 2) opensips版本:2.1.2 3) pjsip版本 :2.5.5 4) ffmpeg版本:3.3.4 5) sdl版本:2.0 6) vs ...
- Ubuntu16.04配置Android SDK环境
下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html(注意32位与64位,我 ...
- (二十四)Ubuntu16.04配置ADB调试环境
一.安装adb 1.可以通过 apt-get install android-tools-adb 来安装adb sudo add-apt-repository ppa:nilarimogard/web ...
- 阿里云学生服务器搭建网站-Ubuntu16.04安装php开发环境
阿里云学生服务器搭建网站(2)-Ubuntu16.04安装php开发环境 优秀博文:https://www.linuxidc.com/Linux/2016-10/136327.htm https:/ ...
- Ubuntu16.04安装后开发环境配置和常用软件安装
Ubuntu16.04安装后1.安装常用软件搜狗输入法+编辑器Atom+浏览器Chome+视频播放器vlc+图像编辑器GIMP Image Editor安装+视频录制软件RcordMyDesktop安 ...
- ubuntu16.04配置java环境(重启后不会失效)
ubuntu16.04配置java环境(重启后不会失效) 1.jdk的安装包(.tar.gz)拷贝到/opt目录下 mv jdk-8u144-linux-x64.tar.gz /opt 2.解压文件 ...
- Ubuntu16.04搭建LAMP开发环境
Ubuntu16.04搭建LAMP开发环境 虚拟机上安装好Ubuntu16.04后,是一台空白的Ubuntu.我的目的是搭建LAMP环境,顺便搭一个Python Django环境. 基本设置 1.配置 ...
- Ubuntu16.04配置apache+php+mysql
命令行配置apache input sudo apt-get install apache2 done! 命令行配置mysql 参见: MySQL install and setting 命令行配置p ...
随机推荐
- python合并多个文件
import os filelist=os.listdir('/root/Music') for item in filelist: print item newfile=open('/root/Mu ...
- 解析《Effective Java》之多个构造器、Javabeans模式和Builder模式
最近看<Effective Java>这本被很多同行称为神作的书,但是这本书很多地方缺少了举例不好懂,下面是关于我对书上知识的理解. 一.<Effective Java>中文版 ...
- (Demo分享)利用JavaScript(JS)做一个可输入分钟的倒计时钟功能
利用JavaScript(JS)实现一个可输入分钟的倒计时钟功能本文章为 Tz张无忌 原创文章,转载请注明来源,谢谢合作! 网络各种利用JavaScript做倒计时的Demo对新手很不友好,这里我亲手 ...
- 老雷socket编程之认识常用协议
老雷socket编程之常见网络协议 1.ip IP协议是将多个包交换网络连接起来,它在源地址和目的地址之间传送一种称之为数据包的东西, 它还提供对数据大小的重新组装功能,以适应不同网络对包大小的要求. ...
- 戏说 .NET GDI+系列学习教程(一、Graphics类--纸)
Graphics类(纸) Graphics类封装一个GDI+绘图图面,提供将对象绘制到显示设备的方法,Graphics与特定的设备上下文关联. 画图方法都被包括在Graphics类中,在画任何对象时, ...
- 【dockerFile配置jvm 启动参数】dockerFile 参数解释
最近比较忙,实际也没有用得上.仅仅记录几个链接: Dockerfile reference:https://docs.docker.com/engine/reference/builder/#usag ...
- 【java自定义注解1】java自定义注解-属性
关于自定义注解,以前项目种应用的不多,最近看新项目过程中发现了挺多自定义注解相关内容,使用起来比较巧妙,于是 总结了两种方式,记录如下: 第一种:结合反射进行属性注入,代码如下: 1.定义一个注解: ...
- Solr 18 - 通过SolrJ局部更新Solr中的文档 (原子操作、非覆盖操作)
目录 1 需求分析 2 需求实现 2.1 pom.xml依赖 2.2 Java代码示例 3 补充说明 3.1 关于文档中_version_的取值说明 3.2 store=true/false的区别 1 ...
- 性能监控: SPF4J介绍
1. 总体介绍 性能测试是一项在软件生命开发周期中总是被置于最后一环的活动.我们经常依靠 Java profilers 去帮助发现性能问题. 在这篇文章中,我们将会学习关于 Java 的简单性能测试框 ...
- Java中的反射(1)
Reflection in Java 反射到底是什么呢,我被问到的时候其实也没办法很好的回答这个问题,翻一翻博客,然后逐条讲解.今天干脆就整合一下,免得以后还要去翻. 首先讲一下Java是如何在运行时 ...