从PHP开发人员部署Python应用程序

从PHP开发人员部署Python应用程序,python,deployment,Python,Deployment,我对Python的部署过程有点困惑。比如说你 使用virtualenv创建一个全新的项目 源箱/激活 pip安装一些库 编写一个简单的hello world应用程序 pip冻结依赖项 当我将此代码部署到计算机中时,是否需要在安装依赖项之前首先确保该计算机是源代码?我并不想听起来像个十足的傻瓜,但在PHP世界里,我不必担心这一点,因为它已经是项目的一部分了。所有依赖项都已在自动加载器中注册 这些步骤将是: rsync文件(或任何其他方法) 源箱/激活 pip从pip冻结输出文件安装依赖项 这感觉很

我对Python的部署过程有点困惑。比如说你

  • 使用virtualenv创建一个全新的项目
  • 源箱/激活
  • pip安装一些库
  • 编写一个简单的hello world应用程序
  • pip冻结依赖项
  • 当我将此代码部署到计算机中时,是否需要在安装依赖项之前首先确保该计算机是源代码?我并不想听起来像个十足的傻瓜,但在PHP世界里,我不必担心这一点,因为它已经是项目的一部分了。所有依赖项都已在自动加载器中注册

    这些步骤将是:

  • rsync文件(或任何其他方法)
  • 源箱/激活
  • pip从pip冻结输出文件安装依赖项
  • 这感觉很尴尬,或者只是错误,而且很容易出错。正确的步骤是什么?我已经到处搜索过了,但似乎很多教程/文章都假设阅读本文的人都有python经验(imo)

    更新:

    我应该提到,我正在努力理解它是如何与Apache连接的

  • 复制包含
    virtualenv
    的目录。排除所有
    virtualenv
    生成的文件
  • 在目标计算机上,在目录上创建一个
    virtualenv
  • source bin/激活
  • pip安装-r requirements.txt

  • 如果使用版本控制,则第一步将简化;您只需克隆(Mercurial或Git)或签出(Subversion)代码。所有
    virtualenv
    生成的文件都应该位于相应的忽略文件中。(
    .hgignore
    .gitignore
    .svnignore
    )。

    那么源代码bin/activate也适用于Apache?我认为源命令只用于终端使用。@user1218776:我们在哪里提到了Apache?只需执行以下操作即可节省步骤并简化:
    pip-E/path/to/env
    。那么你就不必担心资源问题了。apache方面与将你的应用部署到服务器完全无关。这确实是两个问题。apache的设置取决于您正在创建的python应用程序的类型。