【问题标题】:Rails - AWS (Elastic Beanstalk) deployment, Error Command 'git clone'Rails - AWS(Elastic Beanstalk)部署,错误命令“git clone”
【发布时间】:2017-05-30 15:48:30
【问题描述】:

尝试在 AWS Elastic Beanstalk 中捆绑安装来自 github 的 gem(无论出于何种原因,作者都没有更新 ruby​​gems.org 上的 gem...),但我收到以下错误:

Command failed on instance. R
         (TRUNCATED)...nd `git clone "https://github.com/Diego81/omnicontacts.git"

这是我的 gemfile 中的代码

gem 'omnicontacts', git: "https://github.com/Diego81/omnicontacts.git"

我尝试过的其他事情......

gem 'omnicontacts', git: "git://github.com/Diego81/omnicontacts.git"

gem 'omnicontacts', github: "Diego81/omnicontacts"

我尝试过的一切仍然是同样的错误。我也用其他宝石尝试过这个,我收到了同样的错误。我还应该注意,这在我的本地机器上完美运行,这似乎是 Elastic Beanstalk 的问题。

【问题讨论】:

    标签: ruby-on-rails ruby amazon-web-services amazon-elastic-beanstalk omniauth


    【解决方案1】:

    好的,我通过在我的 EC2 实例上安装 git 解决了这个问题。只需 ssh 进入您的实例并运行以下命令:

    sudo yum install git
    

    这应该可以解决问题。

    【讨论】:

      【解决方案2】:

      我更喜欢 this answer,它将 Git 添加到 .ebextensions。这样,如果我有例如一个生产服务器和一个登台服务器,我不必分别 SSH 到两者,我可以部署到每个服务器,Git 会自动安装。

      ebextensions 方法似乎也更耐用。如果将来出于某种原因需要启动一个新的服务器实例,我宁愿将配置保存为代码,而不是记住配置应该是什么,然后手动实现配置。

      通过创建一个名为 .ebextensions/ruby.config 的文件,我能够获得所需的内容,其内容如下:

      packages:
        yum:
          git: []
      

      【讨论】:

        猜你喜欢
        • 2019-02-22
        • 2021-08-28
        • 2017-10-04
        • 2016-03-04
        • 2019-11-22
        • 2014-12-16
        • 2012-11-13
        • 2017-05-08
        • 2018-12-03
        相关资源
        最近更新 更多