django fabric gunicorn

部署时安装

(py3env) [root@iZwz92gq6i22d162qyetwjZ django]# pip install -r requirements.txt 

指定静态文件

    (py3env) [root@iZwz92gq6i22d162qyetwjZ django]# vim blogproject/settings.py 
    STATIC_URL = '/static/'
    # 加入下面的配置
    STATIC_ROOT = os.path.join(BASE_DIR, 'static')
    # STATIC_ROOT 指明了静态文件的收集目录,即项目根目录(BASE_DIR)下的 static 文件夹

根据配置提取静态文件

(py3env) [root@iZwz92gq6i22d162qyetwjZ django]# python manage.py collectstatic

迁移数据库

(py3env) [root@iZwz92gq6i22d162qyetwjZ django]# python manage.py migrate

安装

(py3env) [root@iZwz92gq6i22d162qyetwjZ ~]# pip install fabric

编写自动拉取最新git

(py3env) [root@iZwz92gq6i22d162qyetwjZ /]# vim /opt/sites/django-blog/env/django/fabfile.py
from fabric.api import env, run
from fabric.operations import sudo

GIT_PREO = 'https://github.com/xxx/xxx.git'

env.user = 'xxx'
env.password = 'xx'

env.hosts = 'xxx'


env.port = '22'


def deploy():
    source_folder = '/opt/sites/django-blog/env/django'

    run('cd %s && git pull' % source_folder)
    run("""
        cd {} &&
        /py3env/bin/pip install -r requirements.txt &&
        /py3env/bin/python3 manage.py collectstatic --noinput &&
        /py3env/bin/python3 manage.py migrate
        """.format(source_folder))
    pid = run("pstree -ap |grep gunicorn |grep -v grep |awk '{print $4}' |awk -F ',' '{print $2}' |head -n 1")
    run('kill -HUP %s' % pid)
    run('systemctl restart nginx')

启动监听

(env) [root@iZwz92gq6i22d162qyetwjZ blogproject]# pip install gunicorn
(env) [root@iZwz92gq6i22d162qyetwjZ blogproject]# gunicorn --bind 127.0.0.1:8000 blogproject.wsgi:application

执行自动部署

fab deploy
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值