使用管理命令重新部署django项目

django-sitepush的Python项目详细描述


使用管理命令重新部署django项目

它是做什么的?

使用fabric在每个要重新部署的远程实例上运行管理命令 本身。

远程命令将从git中提取源代码,运行所有必要的django 管理命令,然后重新启动服务器。

它面向中小型应用程序。

为什么不直接写一个结构脚本呢?

更快。当你远程运行所有东西只需要10分钟 部署实例的秒数。

将运行哪些命令?

  • git pull
  • pip install -r requirements.txt
  • syncdb
  • migrate
  • collectstatic
  • restart server (webserver dependent)

要求

  • 正在运行的已部署实例:
    • 带mod wsgi的apache
    • 古尼孔
  • 面料
  • 一个致力于这个项目的虚拟人。
  • 项目的git托管存储库

安装

将应用程序添加到您的INSTALLED_APPS设置:

INSTALLED_APPS = (
    #...
    'sitepush',
)

设置

将服务器配置添加到设置文件:

DEPLOYS = {
    'default': {
        'HOST': '192.168.0.1',         # IP or domain name
        'USER': 'user',                # User to login with
        'BRANCH': 'master',            # Git branch to pull updates from
        'SETTINGS': 'settings',        # Settings file to use (optional)
        'DIR': '/var/www/myproject/',
        'ENV': 'myvirtualenv',         # virtualenv used in the project
        'WEBSERVER': 'gunicorn',       # webserver - 'apache' or 'gunicorn'

        'PID_FILE': '/tmp/gunicorn.pid',  # Gunicorn pid file path
        'WSGI_FILE': 'deploy/wsgi.py',    # Apache wsgi file path
    },
}

应该根据web设置PID_FILE/WSGI_FILE设置 正在使用的服务器。

BRANCH是可选的,默认为master

使用量

python manage.py deploy_remote default

# Or
python manage.py deploy_remote srv1 srv2 #...'

# Don't install requirements:
python manage.py deploy_remote default --noreqs

# Deploy all remote instances:
python manage.py deploy_remote --all

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何将cassandra中的行数据转换为与列相关的嵌套json   java如何使用jcr XPath在jcr:content/@jcr:data中搜索?   java在使用openCV进行安卓开发时如何利用手机的广角镜头   java解析扩展了接口,结束了一个潜在的无限循环   位置服务的@Override方法中存在java Android应用程序错误   java本地线程的用途和需求是什么   具有左右子访问的java节点树遍历   java验证JsonWebToken签名   JUL日志处理程序中的java日志记录   嵌入式Java读取给定时间段的串行数据。   java有没有办法从多个URL获取多个图像?   java线程通过等待intent阻止自己发送intent   java Spring MVC解析多部分内容请求   java JPA/Hibernate静态元模型属性未填充NullPointerException   java格式错误的字符(需要引号,得到I)~正在处理   java为什么PrintWriter对象抛出FileNotFoundException?   java Neo4j未正确保存标签   java IE不加载图像