阿里云centos7.3部署django2

第一步 购买服务器

我用的是阿里云,设置好端口和root密码,我们这里开放了8000端口。
登录到我们的服务器上,可以使用命令行cmd、cmder、powershell。推荐使用cmder。

ssh root@IP(服务器的公网IP)

安装python3

这里我们使用源码安装。将目录切换到/usr/local。

yum install libffi-devel -y 
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make
cd /usr/local
wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz
tar -zxvf Python-3.7.0.tgz
cd Python-3.7.0
./configure --prefix=/usr/local/python3
make && make install
ln -s /usr/local/bin/python3 /usr/bin/python3
ln -s /usr/local/bin/pip3 /usr/bin/pip3

至此,python3和pip安装完毕

第三步 安装nginx
 vi /etc/yum.repos.d/nginx.repo
#添加以下内容
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/mainline/centos/7/x86_64/
gpgcheck=0
enabled=1 

执行

yum install nginx

试试在浏览器中访问一下阿里云的公网地址,如果出现在这里插入图片描述
说明安装成功,如果没有出现,可以试试以下两条命令

setenforce 0
service firewalld stop
第四步 安装mysql
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm 
rpm -ivh mysql-community-release-el7-5.noarch.rpm
sudo yum install mysql-server

之后进入mysql设置好root用户密码即可,如果出现问题,可以去百度。
设置好密码之后要新建我们用到的数据库,建库命令

create database 数据库名称 default charset utf8 collate utf8_general_ci
第五步 安装依赖包
安装依赖
yum install -y mysql-devel python-devel

TIPS:如果不安装的话,安装mysqlclient会出现问题。
安装依赖包有两种方法,一种是一个一个包使用pip安装。
我用的是第二种
首先在自己的电脑上执行
pip freeze > requirement.txt
并且将这个文件放到项目根目录下。

这样我们的库及版本号就打包好了,我的是这个样子的:

Django==2.0.3
django-ckeditor==5.7.1
django-js-asset==1.2.2
mysqlclient==1.4.2.post1
Pillow==6.1.0
pytz==2019.1
uWSGI==2.0.18
第六步 上传项目

我的项目名称叫mysite。
将我们的项目文件打包成mysite.zip文件。在项目zip文件的目录(全英文)下打开cmder,使用如下命令

scp mysite.zip root@IP:/root

这样我们就将我们的项目上传到了服务器上的root目录下
使用unzip命令解压 unzip mysite.zip
进入项目目录
使用以下命令安装依赖包

pip3 install -r requirement.txt

#配置uwsgi
ln -s /usr/local/bin/uwsgi /usr/bin/uwsgi
数据迁移和配置修改

修改setting.py

DEBUG = False

ALLOWED_HOSTS = ['*']

同时修改mysql数据库的密码为我们刚才设定的密码,如果有设定STATIC_URL,请先注释掉,等执行完migrate命令完之后再取消注释。
回到项目根目录,执行

python3 manage.py migrate
python3 manage,py createsuperuser

然后在setting.py中加入
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
在项目根目录下执行

python3 manage.py collectstatic

至此我们的项目修改完成。

第七步 uwsgi

在项目根目录下创建django_uwsgi.ini文件,内容如下

[uwsgi]
socket= 127.0.0.1:8080

chdir=/root/website/mysite#这个是项目mysite的根目录,别的地方都不用修改

module=company_site.wsgi:application

master=true

processes=4

vacuum=ture

编辑完成就可以了。

第八步 配置nginx
1 修改/etc/nginx/conf.d/default.conf

首先备份

cp //etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf.bak
vi /etc/nginx/conf.d/default.conf

在最下面添加:

server {
   listen       8000;
   server_name 127.0.0.1;

   location / {
       include /etc/nginx/uwsgi_params;
       uwsgi_pass 127.0.0.1:8080;
   }
   location /static{
       alias /root/website/mysite/static/;#自己项目的静态文件路径
   }

}
2 修改/etc/nginx/nginx.conf

只修改第一行,修改为(因为我们的项目放在root目录下,所以我们如果不修改成root,静态文件是没有权限访问的)

user  root;

使用以下命令检查:

nginx -t

在这里插入图片描述
出现这个情况,我们就认为配置正确。
接下来重启nginx

service nginx restart

最后进入我们的项目根目录下,执行以下命令即可

uwsgi --ini django_uwsgi.ini

有什么问题多百度,一般都可以找到,如果找不到就按照步骤看自己缺了哪几步。有问题可以私信我。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值