部署django项目到阿里云的通用流程--实测可用 2021.08

部署django项目到阿里云的通用流程–实测可用 2021.08

1. 服务器配置 >>配置安全组 入口的端口配置

在这里插入图片描述
点击添加安全组规则进行端口添加,只需要填端口范围和授权对象,比如80端口,端口范围写80/80,授权对象写0.0.0.0/0,表示所有IP地址都能访问。常用的几个端口号,SSH(22),HTTP(80),HTTPS(443)。
在这里插入图片描述
到此,云服务器的基本设置完成了。点击 实例页面的远程连接,输入6位密码,就可以远程登录。然后会让你输入Ubuntu的账户名和密码。输入成功后就可以远程登录ubuntu的终端,可以像在本地一样通过各种命令操作。

2. 更新服务器

sudo apt-get update

刚购买的ubuntu 16.04服务器自带指向的Python还是2.7版的,需要先通过如下命令升级Python以及更新pip版本。

sudo apt-get install python3.5 # 安装python
sudo apt-get install python3-pip # 安装python 3-pip
sudo rm /usr/bin/python # 删除python 2.7版本
sudo ln -s /usr/bin/python3.6 /usr/bin/python  # 将python链接到最新3.6版
pip3 install upgrade -- pip # 升级pip

3. 配置虚拟环境

sudo pip install virtualenv virtualenvwrapper

在安装virtualenvwrapper的时候如果安装失败,则下载包文件进行安装,下载地址为https://pypi.doubanio.com/simple/virtualenvwrapper

在终端输入命令 vim ~/.bashrc
在打开的文件末尾插入如下代码

export WORKON_HOME=$HOME/.virtualenvs/ 
export PROJECT_HOME=$HOME/workspace/ 
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
source /usr/local/bin/virtualenvwrapper.sh

保存后在终端输入 source ~/.bashrc 使配置文件生效

4. 创建虚拟环境,指定创建python 3.5的虚拟环境

mkvirtualenv -p /usr/bin/python3.6  XX  #XX是虚拟环境的名字,创建python3.6的虚拟环境
 
其他命令:
workon xx    #进入虚拟环境XX
deactivate   #退出虚拟环境

5. 向虚拟环境批量安装包

pip freeze > requirements.txt #导出环境包
pip install -r requirements.txt #批量安装包

6. 安装nginx

sudo apt-get update
sudo apt-get install nginx
  • 安装完成后。用你电脑的浏览器访问你的服务器的公网ip地址,看看安装成功没有。

进入nginx启动目录下面,默认目录/usr/local/nginx/sbin

./nginx #启动nginx

配置nginx文件
在终端输入如下命令

vim /etc/nginx/sites-enabled/default

在打开的文档中加入如下代码

server {
    listen 80;
    server_name 108.108.108.108;
    access_log /root/HelloWorld/web_grandoilcloud__access.log;
    error_log /root/HelloWorld/web_grandoilcloud__error.log;
    root    /root/HelloWorld;
    index   index.html;
    location / {
        include  uwsgi_params;
        uwsgi_pass  127.0.0.1:8000;
    }
    location /static {
       alias /root/HelloWorld/static;
    }
    location /media {
        alias /root/HelloWorld/media;
    }
}

注意:
把108.108.108.108替换为自己的公网ip
static 那里替换成你自己Django项目的static路径;
media 那里替换成你自己Django项目的media路径;
location后面是有空格的,必须要有!alias后面也是有空格的;

重启nginx服务

sudo service nginx restart

7. 安装uwsgi

pip install uwsgi
在项目的根目录下,即有manage.py的地方,新建一个uwsgi.ini文件和一个run.log文件
打开文件 vim uwsgi.ini
写入

#添加配置选择
[uwsgi]
#配置和nginx连接的socket连接
socket=127.0.0.1:8000
#配置项目路径,项目的所在目录
chdir=/root/HelloWorld
#配置wsgi接口模块文件路径
wsgi-file=HelloWorld/wsgi.py
#配置虚拟文件的路径
home=/root/Envs/web
#配置权限
chmod-socket = 666
#配置启动的进程数
processes=4
#配置每个进程的线程数
threads=2
#配置启动管理主进程
master=True
#配置存放主进程的进程号文件
pidfile=uwsgi.pid
#配置dump日志记录
daemonize=uwsgi.log
#配置热加载
py-autoreload=1

注意 :
nginx中的uwsgi_pass和uwsgi.ini的socket要保持一致

在uwsgi.ini的目录下启动 uwsgi --ini uwsgi.ini

版本迭代完成后执行

sudo systemctl restart nginx #重启nginx服务
sudo systemctl restart uwsgi #重启uwsgi服务
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值