django项目部署过程

django项目部署过程

1.上传代码

用git或者其他工具,如scp

代码上传后保证每个应用下的migrations文件夹里只有一个__init__.py文件,自己的迁移文件不要上传上来,具体的git的ignore文件配置如下

.idea
*.log
*.json
*.jpg
*.db
*.pid
**/migrations/*
!**/migrations/__init__.py
__pycache__/
*.crt
*.key

在项目根目录下新建uwsgi.ini文件(和manage.py文件同级)

[uwsgi]
#使用nginx连接时使用,Django程序所在服务器地址
socket=127.0.0.1:8000
#直接做web服务器使用,Django程序所在服务器地址
#http=0.0.0.1:8000
#项目目录
chdir=/home/ubuntu/usermanage
#项目中wsgi.py文件的目录,相对于项目目录
wsgi-file=usermanage/wsgi.py
# 进程数
processes=4
# 线程数
threads=2
# uwsgi服务器的角色
master=True
# 存放进程编号的文件
pidfile=uwsgi.pid
# 日志文件,因为uwsgi可以脱离终端在后台运行,日志看不见。我们以前的runserver是依赖终端的
daemonize=uwsgi.log
# 指定依赖的虚拟环境
virtualenv=/home/ubuntu/.virtualenvs/usermanage

将相应的配置更改一下,然后上传到服务器

uwsgi的启动和停止

uwsgi --ini uwsgi.ini
uwsgi --stop uwsgi.pid

2.nginx配置

到这个文件夹下编辑nginx默认配置文件

sudo vim /etc/nginx/sites-available/default
server {
        listen 80 default_server;
        listen [::]:80 default_server;

        root /var/www/html;

        index index.html index.htm index.nginx-debian.html;

        server_name _;

        location / {
                include uwsgi_params;
                uwsgi_pass 127.0.0.1:8000;
        }
        location /static {
                # 指定静态文件的存放目录
                alias /home/ubuntu/usermanage/usermanage/static;
        }
}
# 在开启一个服务 server { listen
5000; root /var/www/html; index index.html index.htm index.nginx-debian.html; server_name _; location / { include uwsgi_params; uwsgi_pass 127.0.0.1:8001; } location /static { # 指定静态文件的存放目录 alias /home/ubuntu/watchlive/watchlive/static; } }

nginx的启动与停止

/etc/init.d/nginx start
/etc/init.d/nginx stop
posted @ 2019-07-12 09:29  JaryTom  阅读(614)  评论(0编辑  收藏  举报