- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我正在将我的第一个应用程序 (Flask) 部署到 EB,但遇到了障碍。使用 PostgreSQL 需要我安装 psycopg2,但我不知道如何让它运行。
我在这篇文章 ( Psycopg2 on Amazon Elastic Beanstalk ) 和这篇文章 ( https://realpython.com/blog/python/deploying-a-django-app-to-aws-elastic-beanstalk/ ) 中看到,我需要使用以下代码添加文件名 .elasticbeanstalk/01_packages.config
:
packages:
yum:
postgresql-devel: []
我已经用 postgresql93-devel: []
尝试了不同的变体,但仍然没有成功。下面附上我的错误日志。
[2015-11-16T21:03:24.749Z] INFO [2680] - [Application update/AppDeployStage0/AppDeployPreHook/03deploy.py] : Starting activity...
[2015-11-16T21:03:27.024Z] INFO [2680] - [Application update/AppDeployStage0/AppDeployPreHook/03deploy.py] : Activity execution failed, because: Collecting psycopg2==2.6.1 (from -r /opt/python/ondeck/app/requirements.txt (line 1))
Using cached psycopg2-2.6.1.tar.gz
Complete output from command python setup.py egg_info:
running egg_info
creating pip-egg-info/psycopg2.egg-info
writing top-level names to pip-egg-info/psycopg2.egg-info/top_level.txt
writing dependency_links to pip-egg-info/psycopg2.egg-info/dependency_links.txt
writing pip-egg-info/psycopg2.egg-info/PKG-INFO
writing manifest file 'pip-egg-info/psycopg2.egg-info/SOURCES.txt'
warning: manifest_maker: standard file '-c' not found
Error: pg_config executable not found.
Please add the directory containing pg_config to the PATH
or specify the full executable path with the option:
python setup.py build_ext --pg-config /path/to/pg_config build ...
or with the pg_config option in 'setup.cfg'.
----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-z20gvx7_/psycopg2
2015-11-16 21:03:27,010 ERROR Error installing dependencies: Command '/opt/python/run/venv/bin/pip install -r /opt/python/ondeck/app/requirements.txt' returned non-zero exit status 1
Traceback (most recent call last):
File "/opt/elasticbeanstalk/hooks/appdeploy/pre/03deploy.py", line 22, in main
install_dependencies()
File "/opt/elasticbeanstalk/hooks/appdeploy/pre/03deploy.py", line 18, in install_dependencies
check_call('%s install -r %s' % (os.path.join(APP_VIRTUAL_ENV, 'bin', 'pip'), requirements_file), shell=True)
File "/usr/lib64/python2.7/subprocess.py", line 540, in check_call
raise CalledProcessError(retcode, cmd)
CalledProcessError: Command '/opt/python/run/venv/bin/pip install -r /opt/python/ondeck/app/requirements.txt' returned non-zero exit status 1 (ElasticBeanstalk::ExternalInvocationError)
caused by: Collecting psycopg2==2.6.1 (from -r /opt/python/ondeck/app/requirements.txt (line 1))
Using cached psycopg2-2.6.1.tar.gz
Complete output from command python setup.py egg_info:
running egg_info
creating pip-egg-info/psycopg2.egg-info
writing top-level names to pip-egg-info/psycopg2.egg-info/top_level.txt
writing dependency_links to pip-egg-info/psycopg2.egg-info/dependency_links.txt
writing pip-egg-info/psycopg2.egg-info/PKG-INFO
writing manifest file 'pip-egg-info/psycopg2.egg-info/SOURCES.txt'
warning: manifest_maker: standard file '-c' not found
Error: pg_config executable not found.
Please add the directory containing pg_config to the PATH
or specify the full executable path with the option:
python setup.py build_ext --pg-config /path/to/pg_config build ...
or with the pg_config option in 'setup.cfg'.
----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-z20gvx7_/psycopg2
2015-11-16 21:03:27,010 ERROR Error installing dependencies: Command '/opt/python/run/venv/bin/pip install -r /opt/python/ondeck/app/requirements.txt' returned non-zero exit status 1
Traceback (most recent call last):
File "/opt/elasticbeanstalk/hooks/appdeploy/pre/03deploy.py", line 22, in main
install_dependencies()
File "/opt/elasticbeanstalk/hooks/appdeploy/pre/03deploy.py", line 18, in install_dependencies
check_call('%s install -r %s' % (os.path.join(APP_VIRTUAL_ENV, 'bin', 'pip'), requirements_file), shell=True)
File "/usr/lib64/python2.7/subprocess.py", line 540, in check_call
raise CalledProcessError(retcode, cmd)
CalledProcessError: Command '/opt/python/run/venv/bin/pip install -r /opt/python/ondeck/app/requirements.txt' returned non-zero exit status 1 (Executor::NonZeroExitStatus)
很明显我需要安装 psycopg2,但我不确定我可以采取哪些其他步骤来完成这项工作。
最佳答案
我解决了,你需要先打开你的EC2实例,然后这样安装
sudo yum install postgresql-devel
然后部署你的 EB
关于python - 弹性 beantalk 上的 psycopg2 - 无法部署应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33747799/
使用 Elastic Beanstalk .config文件有点……有趣。我正在尝试将环境属性与 files: 一起使用Elastc Beanstalk 中的配置选项 .config文件。我想做的是:
大家好,我是新来的,有一个将 Jenkins 部署重新升级到 AWS Elastic Beanstalk 的问题。 我们的应用程序目前由 3 个组件组成,包括前端、api 和一个管理工具,所有这些组件
我是 AWS 世界的新手,我刚刚编写并部署了一个小型 Pyramid 应用程序。我在设置时遇到了一些问题,但在我开始工作后,一切似乎都很好。但是,现在,我的部署似乎并没有对环境产生影响(我更改了我的根
我正在尝试在 Elastic Beanstalk 中启动后台作业,后台作业有一个无限循环,因此它永远不会返回响应,所以我收到此错误:“有些实例没有响应命令。没有从 [ 收到响应i-ba5fb2f7]。
使用 eb CLI 时 eb init eb create 我收到一个错误: ERROR: [Instance: i-003165df12360a5c4] Command failed on inst
我在弹性 beantalk 上使用 django 进行开发,我想对 apache 配置进行两项更改: 1. 将 www.domain.com 重定向到 domain.com 2. 重定向 http:/
我有一个 Java 应用程序,最近已迁移到 Amazon AWS、Beanstalk with tomcat7 和 MySQL 数据库 (RDS)。 我想合并基本的 Tomcat 身份验证,我在 WE
我有一个在 Elastic Beanstalk 环境中运行的 Laravel 应用程序。无法访问数据库、S3 和 SQS 变量 我确实在 ebxtensions 上编写了一个配置,以便在部署期间使用
我目前正在构建一个 C# WebApi 2 应用程序,我将把它上传到 Amazon Elastic Beanstalk 实例进行部署。到目前为止,我取得了成功,在我的本地机器上,我刚刚完成了文件上传功
由于我是 AWS 的新手,所以我在使用弹性 beantalk 时遇到了问题。我设置了所有内容并部署了第一个应用程序,到目前为止一切顺利。但是当我推送另一组更改时,它只是替换了整个文件而不仅仅是更改的文
我正在努力解决 AWS 问题。我使用 master creds 登录到 AWS Web 控制台。我使用 IAM 创建了一个具有管理员角色 (arn:aws:iam::aws:policy/Admini
我正在为 Django 服务器设置一个 aws 服务器。我已经成功安装了python3.5.1、pip和django。 根据 aws 文档,我正在运行以下命令: pip install awsebcl
在 eb deploy 之后,环境卡在 Health: 'Severe'。 它在最近的事件中显示以下警告: Environment health has transitioned from Info
我的团队使用本地 Capistrano 脚本来部署一些 Web 应用程序。我们使用 beanstalk's我们的 git 存储库的托管存储库。 一直困扰我的是,我们的部署工作流程没有为我们提供每个环境
尝试使用弹性 beanstalk 在 ec2 上部署 rails 4.2.1 应用程序时出现以下错误 on't run Bundler as root. Bundler can ask for sud
我正在尝试使用 cli 部署到弹性 beantalk。 我运行的命令是 eb create --modules ebtargets/goapi -v 我收到以下错误 WARNING: You hav
我正在使用 beantalk 在 aws ec2 上进行部署。我的项目使用 bower 来管理库的依赖性。(不过我项目的主要语言是python-flask。) 据我所知,我可以通过 .ebextens
我有几个 EB 应用程序,我想将它们从经典转换为应用程序负载平衡器。在 documentation似乎默认方法是使用适当的负载平衡器从头开始创建新环境。考虑到我有很多环境变量和几个环境,我宁愿不必重建
我们有一个 Rails 应用程序,几个月来一直运行良好。今天我们发现了一些与领导者选举不一致的地方。主要是: su - "leader_only bundle exec rake db:migrate
我正在尝试从 url 中删除 www,通常我通过使用具有重写规则的 .htaccess 文件来执行此操作。我不知道将此文件放在我的弹性 beanstalk 文件夹结构中的什么位置,也不知道在哪里创建它
我是一名优秀的程序员,十分优秀!