Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何在没有结构的情况下部署Django项目_Python_Django_Python 3.x_Nginx - Fatal编程技术网

Python 如何在没有结构的情况下部署Django项目

Python 如何在没有结构的情况下部署Django项目,python,django,python-3.x,nginx,Python,Django,Python 3.x,Nginx,这可能是个愚蠢的问题,也许不是。我目前已经完成了Django项目的开发,并希望部署它。因为构造不支持Python 3。我想我需要自己安装和配置东西 所以我的问题是,在我的项目的虚拟环境中,我应该使用什么样的软件 NGINX gunicorn memcached supervisord git 还是所有这些软件都应该安装在virtualenv的外部 所有这些都是系统范围的软件,而不仅仅是python包 Fabric在您的服务器中不工作,它所做的只是读取fabfile.py,连接到您的服务器并根据

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

所以我的问题是,在我的项目的虚拟环境中,我应该使用什么样的软件

NGINX
gunicorn
memcached
supervisord
git
还是所有这些软件都应该安装在virtualenv的外部

  • 所有这些都是系统范围的软件,而不仅仅是python包

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

  • 所有这些都是系统范围的软件,而不仅仅是python包

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


  • 我用它来做我的部署。使用Ansible,我可以轻松地配置所有服务器并进行部署。我推荐。

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

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

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

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

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


    如果您也希望在生产服务器中使用git,那么请确保不包含敏感的私有数据(例如密码),除非您在github中有私有存储库。您可以全局安装git(OS package manager),然后在django项目中初始化它

    我没有试过memcached,但我可以告诉你其他的

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

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

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


    如果您也希望在生产服务器中使用git,那么请确保不包含敏感的私有数据(例如密码),除非您在github中有私有存储库。您可以全局安装git(OS package manager),然后在django项目中初始化它

    这回答了OP的问题。请在
    memcache
    上添加注释,以完成此操作。您必须全局安装memcache,并将其配置为在正确的端口上侦听(通常默认为11211)。然后,使用
    pip
    在venv中安装
    python memcached
    ,并确保在
    settings.py
    文件(应该已经安装了)中进行了设置。这回答了OP的问题。请在
    memcache
    上添加注释,以完成此操作。您必须全局安装memcache,并将其配置为在正确的端口上侦听(通常默认为11211)。然后,使用
    pip
    在venv中安装
    python memcached
    ,并确保在
    settings.py
    文件(应该已经安装了)中进行了设置。