3
2013-11-03 20:30:48,342 [INFO] (30173 MainThread) [directoryHooksExecutor.py-29] [root directoryHooksExecutor info] Output from script: /usr/bin/ruby1.9 /usr/bin/rake assets:precompile:all RAILS_ENV=production RAILS_GROUPS=assets 
rake aborted! 
Command failed with status(): [/usr/bin/ruby1.9 /usr/bin/rake assets:prec...] 

Tasks: TOP => assets:precompile 
(See full trace by running task with --trace) 
Rake task failed to run, skipping asset compilation. 

如何預編譯AWS Elastic Beanstalk上的資產?嘗試在AWS上預編譯資產Elastic Beanstalk

我收到以下錯誤

回答

1

您可以通過之前或您的應用程序部署之後運行腳本定製系統。 基本上,你需要在你的源代碼創建一個.ebextensions目錄,並插入你的命令和定製步驟在YAML語法。
documentation解釋詳細信息。

當心的是,這些命令的前提爲不具有環境變量設定「根」。如果您需要像PATH或其他變量,則由您來定位它們。

下面是一個示例我寫這需要從源模塊的NodeJS安裝的應用程序。

packages: 
    yum: 
     gcc: [] 
     gcc-c++: [] 


container_commands: 

    10_pre_install_sqlite3: 
     command: "/opt/elasticbeanstalk/node-install/node-v0.10.21-linux-x64/bin/npm install [email protected] --build-from-source" 
     cwd: "/tmp/deployment/application" 
     env: 
      HOME: "/root" 
      PATH: "/sbin:/bin:/usr/sbin:/usr/bin:/opt/aws/bin"