Django+Nginx+uWSGI+Mariadb+Redis 部署完整版

Django+Nginx+uWSGI+Mariadb+Redis 部署完整版

源文链接:本文链接:https://blog.csdn.net/weixin_44331765/article/details/120247478

1. 软件描述

Django:2.2
Nginx:1.14
uWSGI:2.0.19.1
Mariadb:10.4.21-MariaDB MariaDB Server
Redis:5.0.3
OS:CentOS:8.0
Python:3.6.8

2. 前提准备

2.1 数据库安装

  1. 安装Mariadb
    准备一个文件mariadb_install.sh 把脚本放进去,然后执行
    bash mariadb_install.sh 安装即可。
    #!/bin/bash
    
    ############################################### 脚本说明 ###############################################
    # 所属任务:任务一:
    # 执行示例:bash mariadb_install.sh
    # 详细说明: 
    
    ########################################################################################################
    
    #任务操作 - 开始
    yum remove MariaDB -y
    echo "--------步骤3:通过在线方式安装MariaDB--------"
    #创建YUM源文件
    touch /etc/yum.repos.d/MariaDB.repo
    
    #将MariaDB YUM源配置信息写入文件
    echo [mariadb] > /etc/yum.repos.d/MariaDB.repo
    echo name = MariaDB >> /etc/yum.repos.d/MariaDB.repo
    echo baseurl = https://mirrors.aliyun.com/mariadb/yum/10.4/centos8-amd64 >> /etc/yum.repos.d/MariaDB.repo
    echo module_hotfixes=1 >> /etc/yum.repos.d/MariaDB.repo
    echo gpgkey= https://mirrors.aliyun.com/mariadb/yum/RPM-GPG-KEY-MariaDB >> /etc/yum.repos.d/MariaDB.repo
    echo gpgcheck=1 >> /etc/yum.repos.d/MariaDB.repo
    
    #安装MariaDB
    yum install MariaDB-server -y
    
    #启动mariadb服务
    systemctl start mariadb
    
    #查看MariaDB运行信息
    systemctl status mariadb | head  -10
    
    #配置mariadb服务和开机自启动
    systemctl enable mariadb
    
    按照以上步骤安装完毕,然后再进行初始化数据库
    # 初始化数据库
    mysql_secure_installation
    按照提示信息输入密码,默认初始密码为空可以直接回车,这里需要自己读每一步的英文,反正就是设置密码,然后问你是否删除匿名用户什么的,按照提示进行初始化即可。
    
  2. 安装Redis
    yum -y install redis
    
  3. 安装Python3.6
    方法1:使用源码编译:centos8 python3.8.3的安装和虚拟环境的创建
    方法2:使用在线安装:
    yum -y install python3
    也可以使用源码编译和使用虚拟环境,在我的文章中有个文章可以看一下
    

2.2 项目准备

1.开源项目
2.或者自己整个项目也可以

2.3 服务器安装

yum -y install nginx

3 准备部署

  1. 安装uWSGI
pip3 install uwsgi
# 如果出错可能原因是没有安装以下软件
yum -y install python3-devel
yum -y install mysql-devel gcc gcc-devel
  1. 在项目目录中创建文件uwsgi.ini这个文件随意命名。
[uwsgi]
# 使用套接字主要是和nginx搭配
socket=127.0.0.1:8000
# 项目目录绝对路径
chdir = /var/www/my_notes
# 项目中wsgi.py所在的文件目录,相对路径
wsgi-file = my_notes/wsgi.py
# 进程数
processes = 4
# 线程数
threads = 2
# 展示项目状态
# stats = 127.0.0.1:9191
# 项目运行的pid主要是为了停止项目
pidfile=uwsgi.pidfile
# 运行日志
daemonize=uwsgi.log
# 是否开启主进程
master=true
  1. 配置nginx
	# 主要改变这么多,其他的不用动
        location / {
          include uwsgi_params;
          uwsgi_pass 127.0.0.1:8000;
          proxy_set_header Host $http_host:$server_port;
          proxy_set_header X-Real-IP $remote_addr;
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
          proxy_set_header X-Forwarded-Proto $scheme;
          proxy_connect_timeout 600;
          proxy_read_timeout 600;
        }
        location /static/ {
			# 静态目录
           alias /var/www/my_notes/static/;
        }

启动命令

systemctl start mysql
systemctl start redis
# 开启项目
uwsgi --ini uwsgi.in
# 停止项目
uwsgi --stop uwsgi.pidfile
# 开启nginx
systemctl start nginx
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值