【问题标题】:Deploying impure Python packages to AWS将不纯的 Python 包部署到 AWS
【发布时间】:2015-11-28 05:26:13
【问题描述】:

我有兴趣使用 Python 包 (graphviz) 在 AWS 上托管的 Flask 服务器上进行一些后端计算。这个包似乎有不少非 Python 依赖,而且确实不能完全通过 pip 安装。 (我使用 Homebrew 在本地安装它。)

如何将这样的包部署到我的 Elastic Beanstalk 环境中?

对于我正在使用的所有其他 Python 包,我只是在我的 requirements.txt 文档中保留了一个列表,并且 Elastic Beanstalk 使用 pip 自动安装它们,但这不适用于包(据我了解,主要是编译的 C 代码)。

【问题讨论】:

    标签: python amazon-web-services amazon-elastic-beanstalk web-deployment


    【解决方案1】:

    您可以包括,例如:

    packages: 
      yum:
        graphviz: []            # [] can optionally be replaced with version number
        other_dependencies: []  # otherwise [] will install the latest version
    

    在应用程序的.ebextensions/ 目录中的.config 文件中。当使用eb deploy 部署应用程序时,这些包将由yum 实用程序安装到您的实例中。

    完整的文件看起来像(假设您使用 AWS 的教程之一创建它)

    option_settings:
      things
    
    container_commands:
      things
    
    packages: 
      yum:
        graphviz: []
    

    Documentation

    【讨论】:

      【解决方案2】:

      如果您愿意迁移到 CodeDeploy,您可以安装 Homebrew 并将软件包安装为部署的一部分。

      【讨论】:

        猜你喜欢
        • 2016-08-09
        • 1970-01-01
        • 1970-01-01
        • 2017-07-14
        • 2016-03-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-07-29
        相关资源
        最近更新 更多