簡體   English   中英

部署Rails應用時出現錯誤AWS彈性beantalk

[英]error deploying rails app aws elastic beanstalk

我正在使用Rails 5.00,嘗試將其部署到AWS時仍然收到此錯誤

[實例:i-04fd37ed6913c4a8a]命令在實例上失敗。 返回碼:5輸出:(TRUNCATED)... ng uglifier 3.0.2安裝unf 0.1.4安裝turbolinks 5.0.1安裝activesupport 5.0.0.1安裝nokogiri(1.6.8)時發生錯誤,並且捆綁器無法繼續。 捆綁之前,請確保gem install nokogiri -v '1.6.8'成功。 掛鈎/opt/elasticbeanstalk/hooks/appdeploy/pre/10_bundle_install.sh失敗。 有關更多詳細信息,請使用控制台或EB CLI檢查/var/log/eb-activity.log。

您有兩種選擇來解決問題:

1)將patch添加到.ebextensions/packages.config如下所示:

packages:
  yum:
    patch: []

這將使yum軟件包管理器在嘗試bundle install之前先進行bundle install

2)將命令配置添加到.ebextensions/nokogiri_command.config如下所示:

commands:
  test:
    command: "bundle config build.nokogiri --use-system-libraries"

這兩種選擇都對我有用。 在推送到AWS之前,請不要忘記提交。

我遇到了同樣的錯誤“在捆綁之前,請確保gem install nokogiri -v'1.6.8'成功。”

這是由於我沒有為ruby選擇正確的部署版本。 最初,在創建環境時,我默認將ruby平台保留為2.3版(Passenger)。 出現了以上錯誤。

我終止了環境並重新創建了環境,但選擇了我在開發環境中使用的ruby 2.2(Puma)。 AWS環境已創建,沒有任何錯誤。

盡管上述糾正措施解決了該問題,但是它不能解釋為什么創建ruby 2.3(Passenger)環境失敗的原因,特別是因為我做了某種“罐裝”構建-環境創建是通過AWS控制台使用配置中的“示例應用程序” 。 我沒有嘗試通過eb命令行創建它,也沒有使用任何我的Elasticbeanstalk腳本或部署我自己的應用程序。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM