【问题标题】:How to deploy Django project without fabric如何在没有结构的情况下部署 Django 项目
【发布时间】:2016-12-21 21:30:13
【问题描述】:

这可能是一个愚蠢的问题,也许不是。我目前完成了 Django 项目的开发,并希望部署它。由于 Fabric 不支持 Python 3。我想我需要自己安装和配置东西。

所以我的问题是我应该在项目的 virtualenv 中使用什么软件?

NGINX
gunicorn
memcached
supervisord
git

或者所有这些软件都应该安装在虚拟环境之外

【问题讨论】:

    标签: python django python-3.x nginx


    【解决方案1】:

    我没有尝试过 memcached,但我可以告诉你其余的。

    首先,在 virtualenv 之外安装 nginx 和 supervisord。

    其次,在 virtualenv 中使用 pip 安装 gunicorn。

    最后,你有文件夹(例如/var/www/youproject/),在那个文件夹中你有virtualenv(/var/www/youproject/myenv),然后是django项目(/var/www/youproject/我的网站/)。然后在您的 django 文件夹中,您可以从 github 克隆项目。您也可以使用 SFTP 进行操作,但我认为通过 github 进行克隆是最简单的。 当然,将你的 django 项目从本地开发服务器上传到 github。

    如果您也想在生产服务器中使用 git,那么请确保您不包含敏感的私有数据(例如密码),除非您在 github 上有私有存储库。您全局安装 git(操作系统包管理器),然后在 django 项目中对其进行初始化。

    【讨论】:

    • 这回答了 OP 的问题。在memcache 上的注释以完成它。您必须全局安装 memcache 并将其配置为侦听正确的端口(通常默认值为 11211)。然后,使用pip 在您的venv 中安装python-memcached,并确保它已在您的settings.py 文件中设置(应该已经设置好了)。
    【解决方案2】:
    1. 所有这些都是系统范围的软件,而不仅仅是 python 包。

    2. Fabric 在您的服务器中不起作用,它所做的只是读取fabfile.py,连接到您的服务器并根据文件执行操作。所以你可以将 Fabric 安装到你的 python2.7 站点包中,并且在你的项目中仍然使用fab live deploy。只是它在你的 virtualenv 中不起作用,所以你要么打开一个新标签,要么只说 deactivate

    【讨论】:

      【解决方案3】:

      我正在使用 Ansible 进行部署。使用 Ansible,我可以配置我的所有服务器并轻松进行部署。我推荐。

      【讨论】:

        猜你喜欢
        • 2012-10-19
        • 1970-01-01
        • 2015-12-16
        • 1970-01-01
        • 2020-12-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多