我试图用AWS Elastic Beanstalk部署我的Rails应用程序。 我已经创建了实例,但是当我尝试使用aws.push部署应用程序时,我在事件日志中遇到以下错误: 2014-09-22 01:23:40 UTC+0550 ERROR [Instance: i-744edb4a Module: AWSEBAutoScalingGroup ConfigSet: null] Command failed on instance. Return code: 1 Output: Error occurred during build: Command hooks failed . 2014-09-22 01:23:39 UTC+0550 ERROR Script /opt/elasticbeanstalk/hooks/appdeploy/pre/10_bundle_install.sh failed with returncode 5 我拉了日志,发现nokogiri gem的安装失败并出现错误: ————————————- /var/log/directory-hooks-executor.log ————————————- Using mail 2.5.4 Using actionmailer 4.0.2 Using active_utils 2.2.1 Using […]
我正在使用Elastic Beanstalk将Ruby on Rails应用程序部署到AWS,并且必须将私钥设置为环境变量 例如 —–BEGIN RSA PRIVATE KEY—– SpvpksXQIBA65ICOgQxV2TvMIICAiMeV9prhdJSKjjsk2 tYdz8lhn/ibROQW71utuHLAyHGMBxz3kIaaIq1kjdkkk tYdz8lhn/ibROQW71utuHLAyHGMBxz3kIaaIq1kjdkkk tYdz8lhn/ibROQW71utuHLAyHGMBxz3kIaaIq1kjdkkk tYdz8lhn/ibROQW71utuHLAyHGMBxz3kIaaIq1kjdkkk —–END RSA PRIVATE KEY—– 但是,在部署应用程序时,这似乎不起作用,因为它总是失败了 OpenSSL :: PKey :: RSAError:既不是PUB密钥也不是PRIV密钥:嵌套asn1错误 我认为这是因为RSA Key格式不正确。 然而,与Heroku不同,AWS EB不接受多行输入(见下文),因此我必须使用\n来创建新行。 我尝试了几种不同的风格,但没有一个似乎正确插入\n ,我总是得到同样的错误。 我已尝试使用\n和每行的结尾,然后\\n并尝试使用双引号\”来包装密钥,但我仍然得到同样的错误。 如何在AWS Elastic Beanstalk中正确设置多行环境变量?
我有几个Rails应用程序,我使用Git作为版本控制系统。 我使用GitHub或Beanstalk作为存储库主机。 我想要的是理论上非常简单。 以某种方式在Web应用程序的页脚中显示最新的提交ID号(哈希?)。 因此,当我查看Web应用程序时,我可以检查它是否已正确提交和部署。 我可以想象有两种方法可以解决这个问题。 第一个是Git的一个可能的function,它允许输出提交ID。 第二个是提交后的Web挂钩(Beanstalk和GitHub都允许这样做)。 有没有人找到办法做到这一点,或类似的东西? 谢谢, 丹尼
我在AWS Elastic Beanstalk平台上运行我的rails应用程序,该平台运行带有Auto Scaling和Elastic Load Balancing的单个EC2实例。 我想知道如何在Elastic Beanstalk上运行resque , delayed_job或sidekicq或其他一些后台作业解决方案。 Elastic Beanstalk上后台作业的可能选项有哪些?
我在Amazon Elastic Beanstalk上运行Ruby 1.9.3和Rails 3.2.8。 在我的数据方面出现了几个问题之后,我做了一个rake db:reload 现在我试图抓取我已在数据库预先重新加载中创建的数据。 我已按照亚马逊文档中的说明进行操作。 但是,在步骤6:在“数据库实例标识符”文本框中键入已还原的数据库实例的名称。 – 提示强制为实例提供新名称 – 从而创建新实例。 这一切都很好,除了我无法更改我使用Elastic Beanstalk的数据库实例,因此它对我来说无用。 除非我遗漏了什么。 请帮忙!!!
我有一个Rails 3应用程序,我正在本地开发并部署在Amazon的Elastic Beanstalk上进行生产。 我的应用程序中有几个地方可以通过HTML表单上传图像。 上传后,我将文件发送到S3进行存储。 在本地开发时我对此工作流程没有任何问题,但在生产中,我在上传期间收到了500内部服务器错误响应(我很确定它是在与S3进行任何通信之前)。 我在我的EC2实例中找到了/var/app/support/logs/passenger.log中发现错误的痕迹。 这是上传过程中生成的行。 2013/03/30 00:58:52 [暴击] 1723#0:* 196227 open()“/ tmp /passenger-standalone.1645 / client_body_temp / 000000000014”失败(2:没有这样的文件或目录),客户端:ip_address ,server:_,request:“POST / admin / users / 1 HTTP / 1.1”,host:“www.my_domain.com”,referrer:“ https://www.my_domain.com/admin/users/1/edit “ 有没有人知道为什么我无法从我的Rails上传文件到Elastic Beanstalk? 在此先感谢您的帮助!
我正在尝试使用弹性beanstalk将我的代码部署到AWS,但在部署时仍然遇到错误。 我添加了一个gem’rb-readline’,当我检查日志时,我发现这个gem在部署时出错了。 我不记得添加gem’rb-readline’修复了什么错误,但我不知道删除gem会不会解决这个问题。 以下是gem的链接: https : //github.com/ConnorAtherton/rb-readline 这是部署中的错误日志。 Application update failed at 2017-10-24T19:27:36Z with exit status 1 and error: Hook /opt/elasticbeanstalk/hooks/appdeploy/pre/11_asset_compilation.sh failed. ++ /opt/elasticbeanstalk/bin/get-config container -k script_dir + EB_SCRIPT_DIR=/opt/elasticbeanstalk/support/scripts ++ /opt/elasticbeanstalk/bin/get-config container -k app_staging_dir + EB_APP_STAGING_DIR=/var/app/ondeck ++ /opt/elasticbeanstalk/bin/get-config container -k app_user + EB_APP_USER=webapp ++ /opt/elasticbeanstalk/bin/get-config container -k support_dir + EB_SUPPORT_DIR=/opt/elasticbeanstalk/support + . /opt/elasticbeanstalk/support/envvars ++ export […]
AWS Elastic Beanstalk – 无法克隆最新平台或eb upgrade从Ruby 2.1 eb upgrade到Ruby 2.2 我一直在粉碎这个。 早在5月,AWS宣布他们的Ruby Elastic Environments现在提供Ruby-2.2(例如ruby-2.2-(passenger-standalone)或ruby-2.2-(puma) )。 我无法将现有的ruby-2.1环境升级到ruby-2.2。 看来我必须完全重建它们……这看起来很傻? 有没有其他人经历过这个? 我只是缺少一些简单的东西吗? 额外的信息 在我的舞台和制作环境中,我一直兴高采烈地使用ruby-2.1-(passenger-standalone)几个月。 现在我想将它们升级到最新的ruby-2.2平台。 AWS文档说这非常简单,实际上他们的一些文档甚至似乎表明你可以使用eb clone –update 。 我正在使用的EB CLI 3.4.5中不存在该标志:(此外,Web控制台具有Clone with Latest Platform选项菜单项,但它已被禁用。 看来,我所能做的就是到达最新的Ruby-2.2实例,就是从头开始创建一个全新的环境。 这非常令人讨厌。 所以这就是我尝试过的…… $ eb status Environment details for: staging Application name: xyz Region: us-west-2 Deployed Version: fbe7 Environment ID: someId Platform: 64bit […]
通过最近使用Git设置用于Ruby部署的AWS Elastic Beanstalk的教程 ,我只是从我的CI服务器设置了一个Elastic Beanstalk环境。 但是,应用程序无法启动。 我浏览了日志,发现bundle install失败并显示错误消息。 获取git@github.com:example / private-repository.git主机密钥validation失败。 致命:远程终端意外挂断[31mGit错误:命令git clone ‘git@github.com:example/private-repository.git’ “/var/app/ondeck/vendor/cache/ruby/1.9.1/cache/bundler/git/private-repository-e4bbe6c2b13bb62664e39e345c1b01d80017934c” –bare –no-hardlinks clone’git@github.com git clone ‘git@github.com:example/private-repository.git’ “/var/app/ondeck/vendor/cache/ruby/1.9.1/cache/bundler/git/private-repository-e4bbe6c2b13bb62664e39e345c1b01d80017934c” –bare –no-hardlinks目录/ var / app / ondeck中的git clone ‘git@github.com:example/private-repository.git’ “/var/app/ondeck/vendor/cache/ruby/1.9.1/cache/bundler/git/private-repository-e4bbe6c2b13bb62664e39e345c1b01d80017934c” –bare –no-hardlinks失败。[0m 我的Rails应用程序的Gemfile包含对我在Github上拥有的几个私有存储库上托管的gemified插件的引用。 就像是 gem’partgemname’,: git =>’git@github.com:example / private-repository.git’ 我遇到过与Capistrano部署类似的问题,这些问题通过设置ssh_options[:forward_agent] = true 。 AWS Elastic Beanstalk Ruby容器通过放在.ebextensions下的自定义.config文件支持自定义配置。 在这种情况下,设置SSH转发代理会有所帮助吗? 在启动Elastic Beanstalk环境时,还有其他替代方法可以访问私有Github存储库吗? 更新1:我刚刚检查了启动bundle install的用户。 发现脚本/opt/elasticbeanstalk/hooks/appdeploy/pre/10_bundle_install.sh以root用户/opt/elasticbeanstalk/hooks/appdeploy/pre/10_bundle_install.sh启动bundle […]