开发项目部署流程

文章目录

  • 一、 在Linux下配置虚拟环境
    • 1.1、 确保系统安装了python3 pip3
    • 安装文件
    • 3、 创建虚拟环境
  • 二、 将window项目同步到linux
    • Git 安装 sudo apt install git
  • 三、 发布uwsgi服务器
    • 1.进入虚拟环境
    • 2.添加配置
      • 在项目根目录添加 uwsgi.ini
  • 四、 使用nginx服务器部署项目
  • 五、 Nginx 可以进行负载均衡, 实现逆向解析
    • 1.处理静态文件
    • 2.修改nginx配置文件

一、 在Linux下配置虚拟环境

1.1、 确保系统安装了python3 pip3

如何安装pip3

sudo apt install python3-pip
安装时如果出现这个错误
E: 无法获得锁 /var/lib/dpkg/lock - open (11: 资源暂时不可用)
E: 无法锁定管理目录(/var/lib/dpkg/),是否有其他进程正占用它?

解决方案

cd /var/lib/dpkg/

删除lock文件

sudo rm lock

安装文件

sudo pip3 install virtualenv

sudo pip3 install virtualenvwrapper

cd ~ 进入当前用户根目录
sudo vim .bashrc 打开配置文件
粘贴课件中三行

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

:wq! 保存退出
Source .bashrc 更新

3、 创建虚拟环境

mkvirtualenv pro1env

二、 将window项目同步到linux

Git 安装 sudo apt install git

cd /home/zzy sudo mkdir py1903 sudo chmod -R 777 py1903 cd py1903///
直到看到require.txt

安装require.txt 下所有的模块 workon 虚拟环境 pip install -r require.txt 安装所有模块

注意 安装mysqlclient==1.4.2.post1 会失败导致所有的模块不能安装 sudo apt insatall
libmysqlclientdev 先安装这个包之后就可以安装mysqlclient

三、 发布uwsgi服务器

1.进入虚拟环境

Pip install uwsgi

2.添加配置

在项目根目录添加 uwsgi.ini

[uwsgi]
#socket=外网ip:端口(使用nginx连接时,使用socket) http=0.0.0.0:12000 chdir=/home/zzy/py1903/Py1903/demo3 wsgi-file=demo3/wsgi.py
processes=4 threads=2 master=True pidfile=uwsgi.pid
daemonize=uwsgi.log

将setting中ALLOWED_HOSTS = ["*"]

启动 uwsgi –- ini uwsgi.ini 停止 uwsgi – - stop uwsgi.pip

四、 使用nginx服务器部署项目

Sudo apt install nginx
修改nginx配置文件
Sudo vi   /etc/nginx/nginx.conf

server {
                listen 0.0.0.0:13000;
                location / {
                           include uwsgi_params;
                           uwsgi_pass 0.0.0.0:12000;
                        }
                        }

将uwsig配置文件其中的http修改socket
socket=0.0.0.0:12000
#http=0.0.0.0:12000
重启uwsgi服务器
Uwsgi –-stop uwsgi.pid

Uwsgi –-ini uwsgi.ini
重启nginx
Sudo nginx -s stop 停止
Sudo nginx 启动

五、 Nginx 可以进行负载均衡, 实现逆向解析

1.处理静态文件

Sudo chmod -R 777 staticroot
cd staticroot    pwd获取赋值当前路径

在settings.py中修改
STATIC_ROOT = “/home/zzy/py1903/demo3/staticroot”

python  manage.py collectstatic

2.修改nginx配置文件

Location /static {
Alias /home/zzy/py1903/demo3/staticroot;
} 

重启nginx服务器
sudo nginx -s stop
sudo nginx

你可能感兴趣的:(IT技术)