python - Elastic Beanstalk 无法安装包

标签 python django amazon-web-services amazon-ec2 amazon-elastic-beanstalk

我正在尝试在 AWS Elastic Beanstalk 上部署我的应用程序。我收到此错误,完全看不出问题出在哪里。

下面是 .ebextensions/mysite-env.config 中的代码

packages:
  yum:
    python-devel: []
    postgresql-devel: []

container_commands: 
  01_syncdb:
    command: "django-admin.py syncdb --noinput"
    leader_only: true
  02_createadmin: 
    command: "scripts/createadmin.py"
    leader_only: true

option_settings: 
  - option_name: WSGIPath
    namespace: "aws:elasticbeanstalk:container:python"
    value: "mysite/wsgi.py"
  - option_name: DJANGO_SETTINGS_MODULE
    value: "mysite.settings"

经过几次尝试,我想通了一些事情

  1. 上面的配置文件似乎在 requirements.txt 出现在根目录之后运行
  2. 无法安装那些包(如上所述),但我可以通过进入 EC2 实例的 ssh 来安装(奇怪)

[1] 的问题在于,要安装 psycopg2,我需要上述包。那么,我该如何先安装它们呢?

当我运行这些设置时,出现以下错误:

[2014-11-19T09:45:19.819Z] INFO  [6703]  - [CMD-AppDeploy/AppDeployStage0/EbExtensionPreBuild] : Activity execution failed, because: command failed with error code 1: Error occurred during build: Yum does not have postgresql-devel available for installation (Executor::NonZeroExitStatus)

然后,我使用了以下设置

套餐: 百胜: python 开发:[] 易于: postgresql-devel: []

然后我收到以下错误:

[2014-11-19T09:47:54.271Z] ERROR [6789]  : Command execution failed: [CMD-AppDeploy/AppDeployStage0/EbExtensionPreBuild] command failed with error code 1: Error occurred during build: [Errno 2] No such file or directory (ElasticBeanstalk::ActivityFatalError)
    at /opt/elasticbeanstalk/lib/ruby/lib/ruby/gems/2.1.0/gems/beanstalk-core-1.0/lib/elasticbeanstalk/activity.rb:189:in `rescue in exec'
    ...
caused by: command failed with error code 1: Error occurred during build: [Errno 2] No such file or directory (Executor::NonZeroExitStatus)

当我可以直接从 ssh 安装这些包时,自动化有什么问题?我的设置有什么问题?

最佳答案

在 yum 语句中使用 postgresql93-devel 因为他们已经更新了包名

packages:
  yum:
    python26-devel: []
    postgresql93-devel: []

关于python - Elastic Beanstalk 无法安装包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26996870/

相关文章:

javascript - Bootstrap AngularJS

node.js - AWS Step Function : Function . length() 在选择状态的变量字段中返回错误

amazon-web-services - 如何为 AWS 创建 Kubernetes Ingress

python - 在 virtualenv 中运行的 django 在执行/usr/share/qgis... 后给出语法错误(不在 virtualenv 中)

python - 使用 Pandas 将数据框中的值替换为另一个数据框中的值

Django 1.4 自定义模板标签返回 HTML

javascript - aws lambda 中的 Nightmare 下载管理器

Python 和 Matplot : How can I draw a simple shape by points?

python - 如何在Python中找到/计算这个形状的阴影面积?

python - 如何在django中使用加密密码登录