我有一個Rails 4應用程序使用ruby 2.3,我想使用AWS Ebs進行部署。我將db連接指向一個現有的數據庫,我正在使用cli來初始化和創建。當我到了創造的部分我不斷收到一個錯誤,指出消息:Rails應用程序無法部署在彈性beanstalk上
Hook /opt/elasticbeanstalk/hooks/appdeploy/pre/12_db_migration.sh failed. For more detail, check /var/log/eb-activity.log using console or EB CLI.
這當然意味着遷移失敗。當我檢查日誌時說它已經存在表格,我做了一些研究,發現你可以在.ebextensions/
中包含設置來指定不運行遷移或在測試和開發上運行軟件包。這裏是我的.ebextensions/ruby-settings.config
:
option_settings: BUNDLE_WITHOUT: "test:development" RAILS_ENV: production RACK_ENV: production RAILS_SKIP_MIGRATIONS: true
但是它仍然無法部署,並給出了同樣的錯誤消息。問題是,我在這裏做錯了什麼?我試着根據我在這個blog和AWS文檔頁面here上找到的教程以不同的方式重寫這個配置文件。
對我在做什麼錯的任何想法都有幫助,因爲我目前處於虧損狀態。
同樣的問題,當我檢查我注意到這個日誌: '++出口RAILS_SKIP_MIGRATIONS = FALSE' '++ RAILS_SKIP_MIGRATIONS = FALSE' – WhyAyala
嗯,這是尷尬。在檢查我最近上傳的我的應用程序的zip後,我發現沒有包含.ebextensions。當我開始研究它時,我認爲將目錄添加到.gitignore是相當必要的,這與.elasticbeanstalk目錄相同。當我運行'eb create'時,一切正常 – WhyAyala