您的位置:首页 > 编程语言 > Python开发

阿里云Ubuntu 16.04部署Python Django REST framework

2017-08-07 12:57 671 查看

1.预备环境 购买 阿里云Ubuntu 16.04 64位服务器

优惠购买地址:199/年

https://free.aliyun.com/ntms/free/experience/getTrial.html?spm=5176.7973419.726407.45.5954fc0bXiIYOe



2.更新pip

pip install --upgrade pip




3.安装 Nginx, uwsgi

sudo apt-get install nginx

sudo apt-get install uwsgi


4.安装,创建虚拟环境

pip install virtualenv


//创建虚拟环境文件夹
mkdir SmartCommunity-ENV
cd SmartCommunity-ENV

**//创建虚拟环境(方便后期部署)**
virtualenv vir1
source vir1/bin/activate


5.进入虚拟环境,安装必要软件



安装Django和restframework框架

pip install django
pip install djangorestframework
pip install Django


安装MySQL数据库

//没有安装的话迁移会出错
pip install mysqlclient
sudo apt-get install python3-dev libmysqlclient-dev
sudo apt-get install mysql-server




创建数据库

mysql -uroot -p


若没有设置账号密码,使用的则是系统账号密码,在一下文件的[client]节点下

/etc/mysql/debian.cnf

create database huantai charset=utf8;


远程登录连接失败原因:

1. mysql数据库配置文件不要只监听本地地址;
/etc/mysql/mysql.conf.d/mysqld.cnf
注释掉:bind-address ,然后重启




2. mysql添加账号的时候开启远程允许;
CREATE USER 'luojie'@'%' IDENTIFIED BY '123456';


GRANT ALL PRIVILEGES ON *.* TO 'luojie'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;


FLUSH   PRIVILEGES;


3. 防火墙关闭下或者开放3306;
ufw disable


4. 阿里云账号登陆后管理ECS那边的安全策略开启3306这样数据库使用的端口




重启sqlserver:
sudo service mysql restart


6.导入自己的代码

本例从git中clone代码

//设置Git的user name和email:
$ git config --global user.name "luojie1024"
$ git config --global user.email "luojie@hnu.edu.cn"


//生成SSH密钥过程:
1.查看是否已经有了ssh密钥:cd ~/.ssh
如果没有密钥则不会有此文件夹,有则备份删除
2.生存密钥:
$ ssh-keygen -t rsa -C “luojie@hnu.edu.cn”
按3个回车,密码为空。



4000
查看生成的公钥



复制公钥



添加到github中



在服务器端clone自己的项目



数据迁移

python manage.py makemigrations
python manage.py migrate




7.运行

添加在阿里云控制台添加安全组策略



运行后台

python manage.py runserver 0.0.0.0:9000




内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息