2013-03-21 4 views
2

Я установил nodejs на Ubuntu 12.04 сервер, и я хочу знать, почему у меня есть проблемы при компиляции активов, когда я иду в консоль rails c я запускаю этоExecJS ошибка во время выполнения

ExecJS::Runtimes.best_available=> #<ExecJS::ExternalRuntime:0x0000000118cc88 
@binary="nodejs", 
@command=["nodejs", "node"], 
@deprecated=false, 
@encoding="UTF-8", 
@name="Node.js (V8)", 
@runner_path= "/home/bonsai/.rvm/gems/[email protected]/gems/execjs-1.4.0/lib/execjs/support/node_runner.js", 

@ test_args = ноль, @ test_match = ноль>

И, конечно, я могу запустить node или nodejs команды, что может быть неправильно, это ошибка при попытке скомпилировать активы

/home/bonsai/.rvm/rubies/ruby-1.9.3-p392/bin/ruby /home/bonsai/.rvm/gems/[email protected]/bin/rake assets:precompile:all RAILS_ENV=production RAILS_GROUPS=assets 
rake aborted! 
Killed 

    (in /home/bonsai/bonsaierp/app/assets/javascripts/application.js.coffee) 
/home/bonsai/.rvm/gems/[email protected]/gems/execjs-1.4.0/lib/execjs/external_runtime.rb:142:in `exec_runtime' 
/home/bonsai/.rvm/gems/[email protected]/gems/execjs-1.4.0/lib/execjs/external_runtime.rb:28:in `block in exec' 
/home/bonsai/.rvm/gems/[email protected]/gems/execjs-1.4.0/lib/execjs/external_runtime.rb:41:in `compile_to_tempfile' 
/home/bonsai/.rvm/gems/[email protected]/gems/execjs-1.4.0/lib/execjs/external_runtime.rb:27:in `exec' 
/home/bonsai/.rvm/gems/[email protected]/gems/uglifier-1.3.0/lib/uglifier.rb:100:in `compile' 
/home/bonsai/.rvm/gems/[email protected]/gems/actionpack-3.2.13/lib/sprockets/compressors.rb:74:in `compress' 
/home/bonsai/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/processing.rb:265:in `block in js_compressor=' 
/home/bonsai/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/processor.rb:29:in `call' 
/home/bonsai/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/processor.rb:29:in `evaluate' 
/home/bonsai/.rvm/gems/[email protected]/gems/tilt-1.3.6/lib/tilt/template.rb:77:in `render' 
/home/bonsai/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/context.rb:193:in `block in evaluate' 
/home/bonsai/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/context.rb:190:in `each' 
/home/bonsai/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/context.rb:190:in `evaluate' 
/home/bonsai/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/bundled_asset.rb:26:in `initialize' 
/home/bonsai/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/base.rb:252:in `new' 
/home/bonsai/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/base.rb:252:in `build_asset' 
/home/bonsai/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/index.rb:93:in `block in build_asset' 
/home/bonsai/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/caching.rb:19:in `cache_asset' 
/home/bonsai/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/index.rb:92:in `build_asset' 
/home/bonsai/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/base.rb:169:in `find_asset' 
/home/bonsai/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/index.rb:60:in `find_asset' 
/home/bonsai/.rvm/gems/[email protected]/gems/actionpack-3.2.13/lib/sprockets/static_compiler.rb:19:in `block in compile' 
/home/bonsai/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/base.rb:219:in `block in each_logical_path' 
/home/bonsai/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/base.rb:206:in `block (2 levels) in each_file' 
/home/bonsai/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/base.rb:196:in `each' 
/home/bonsai/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/base.rb:196:in `each_entry' 
/home/bonsai/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/base.rb:204:in `block in each_file' 
/home/bonsai/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/base.rb:203:in `each' 
/home/bonsai/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/base.rb:203:in `each_file' 
/home/bonsai/.rvm/gems/[email protected]/gems/sprockets-2.2.2/lib/sprockets/base.rb:217:in `each_logical_path' 
/home/bonsai/.rvm/gems/[email protected]/gems/actionpack-3.2.13/lib/sprockets/static_compiler.rb:18:in `compile' 
/home/bonsai/.rvm/gems/[email protected]/gems/actionpack-3.2.13/lib/sprockets/assets.rake:56:in `internal_precompile' 
/home/bonsai/.rvm/gems/[email protected]/gems/actionpack-3.2.13/lib/sprockets/assets.rake:70:in `block (3 levels) in <top (required)>' 
/home/bonsai/.rvm/gems/[email protected]/gems/actionpack-3.2.13/lib/sprockets/assets.rake:60:in `block (3 levels) in <top (required)>' 
Tasks: TOP => assets:precompile:primary 
(See full trace by running task with --trace) 
rake aborted! 
Command failed with status (1): [/home/bonsai/.rvm/rubies/ruby-1.9.3-p392/b...] 
/home/bonsai/.rvm/gems/[email protected]/gems/actionpack-3.2.13/lib/sprockets/assets.rake:12:in `ruby_rake_task' 
/home/bonsai/.rvm/gems/[email protected]/gems/actionpack-3.2.13/lib/sprockets/assets.rake:21:in `invoke_or_reboot_rake_task' 
/home/bonsai/.rvm/gems/[email protected]/gems/actionpack-3.2.13/lib/sprockets/assets.rake:29:in `block (2 levels) in <top (required)>' 
/home/bonsai/.rvm/gems/[email protected]/bin/ruby_noexec_wrapper:14:in `eval' 
/home/bonsai/.rvm/gems/[email protected]/bin/ruby_noexec_wrapper:14:in `<main>' 
Tasks: TOP => assets:precompile 
(See full trace by running task with --trace) 
+0

Почти такая же ошибка здесь, вы нашли решение? – Darme

ответ

6

У меня была такая же проблема, когда я использовал Digital Ocean. Я предполагаю, что вы используете капельку 512 МБ. Я отправил им билет поддержки, и это был их ответ:

«Как правило, при запуске Nginx, Unicorn и Ruby on Rails на капельке 512 МБ вы столкнетесь с проблемами памяти. Я бы рекомендовал рассмотреть возможность обновления до 1 ГБ капли, а также настроить 1 ГБ памяти подкачки ».

Обратите внимание, что я по-прежнему пытался установить память подкачки емкостью 1 ГБ при использовании капли 512 МБ, так как у меня не было памяти подкачки, установленной на сервере, но на самом деле такая же ошибка. Когда я следил за его советами и обновлялся до 1GB капли, компиляция активов работала нормально.

+0

Я еще не пробовал, но да, у сервера было всего 512 МБ memmory, я думаю, что это мало для сервер рельсов. –

+1

Я смог остановить любые приложения с высокой памятью ('puma', который запускает рельсы и' resque', мою службу activejob), и он скомпилирован успешно. Поскольку я не нахожусь в производстве, это мешает мне обновиться. – bradlis7

Смежные вопросы