Ошибка развертывания Heroku H10 (приложение разбилось)

У меня есть приложение RoR, работающее на моем локальном компьютере, но когда я отправляю его в герою, он падает. Журнал ошибок дает ошибку H10 и говорит:

2012-11-21T15:26:47+00:00 app[web.1]: from /app/vendor/bundle/ruby/1.9.1/gems/newrelic_rpm-3.4.2/lib/new_relic/control/instance_methods.rb:95:in `start_agent' 2012-11-21T15:26:48+00:00 heroku[web.1]: State changed from starting to crashed 2012-11-21T15:26:48+00:00 heroku[web.1]: Process exited with status 1 2012-11-21T15:26:59+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path=/ host=xxx.herokuapp.com fwd= dyno= queue= wait= connect= service= status=503 bytes= 2012-11-21T15:27:00+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path=/favicon.ico host=xxx.herokuapp.com fwd= dyno= queue= wait= connect= service= status=503 bytes= 2012-11-21T15:30:08+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path=/ host=xxx.herokuapp.com fwd= dyno= queue= wait= connect= service= status=503 bytes= 2012-11-21T15:30:08+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path=/favicon.ico host=xxx.herokuapp.com fwd= dyno= queue= wait= connect= service= status=503 bytes= 2012-11-21T15:30:59+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path=/favicon.ico host=xxx.herokuapp.com fwd= dyno= queue= wait= connect= service= status=503 bytes= 2012-11-21T15:31:19+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path=/ host=xxx.herokuapp.com fwd= dyno= queue= wait= connect= service= status=503 bytes= 2012-11-21T15:31:19+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path=/favicon.ico host=xxx.herokuapp.com fwd= dyno= queue= wait= connect= service= status=503 bytes= 2012-11-21T15:32:08+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path=/favicon.ico host=xxx.herokuapp.com fwd= dyno= queue= wait= connect= service= status=503 bytes= 2012-11-21T15:32:08+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path=/ host=xxx.herokuapp.com fwd= dyno= queue= wait= connect= service= status=503 bytes= 

Редактировать:

 2012-11-22T10:00:58+00:00 app[web.1]: 2012-11-22T10:00:59+00:00 heroku[router]: at=info method=GET path=/favicon.ico host=xxx.herokuapp.com fwd= dyno=web.1 queue=0 wait=0ms connect=1ms service=26ms status=200 bytes=0 

Кто-нибудь имел это раньше и знал, что может вызвать проблему? Я не могу найти решение.

Благодарю.

Я столкнулся с той же ошибкой выше, приложение рушилось на heroku (работает отлично в dev), но журналы ошибок на heroku не выявили никаких подсказок. Я прочитал другие ответы на этой странице и разразился потом, увидев «перестройку приложения». Я подумал, может быть, я могу попасть в консоль герою и осмотреться. Я сделал, и даже консоль разбилась, но на этот раз мне сказали, почему. Это была некоторая неясная переменная, которую я забыл удалить во время сеанса устранения неполадок раньше. Я не говорю, что вы столкнетесь с одной и той же проблемой, но я нашел больше информации, когда пытался пропустить консоль. Надеюсь это поможет.

  $heroku run rails console 

У меня была такая же проблема. Журналы тоже не дали мне никаких подсказок. Таким образом, я уменьшил масштаб и уменьшил количество динамиков. Это решило проблему для меня:

 heroku ps:scale web=0 

Подождал несколько секунд …

 heroku ps:scale web=1 
 $heroku run rails console 

Это лучший вариант, так как он даст вам сообщение об ошибке в вашем терминале, который будет намного более подробным, чем ошибка приложения с ошибкой в ​​ваших журналах Heroku.

 $ heroku restart 

помог мне снова запустить мой динозавр. Я новичок в Heroku, но рад, что знаю сейчас.

это случилось со мной, когда я слушал не тот порт

Я изменил свой слух () на “process.env.PORT” так:

 http.listen((process.env.PORT || 5000), function(){ console.log('listening on *:5000'); }); 

вместо

 http.listen(5000, function(){ console.log('listening on *:5000'); }); 

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

 heroku run rails c 

он потерпел неудачу и дал мне гораздо более полезную ошибку. Я забыл удалить вызов метода в процессе производства. Как только я это исправил, приложение отлично работало.

Я решил эту проблему, нажав на Git:

 git add . git commit -am "some text" git push 

затем нажмите на Хероку:

 git push heroku 

затем rake db: мигрировать на Heroku:

 heroku run rake db:migrate 

Мне не удалось включить мой файл .gitignore ->, который разбивает герою. #doh

Вот рабочий файл .gitignore

 /.bundle /vendor/bundle/ /vendor/ruby/ db/*.sqlite3 /db/*.sqlite3-journal /log/* /tmp/* **.war *.rbc *.sassc .redcar/ .sass-cache /config/config.yml /config/database.yml /coverage.data /coverage/ /db/*.javadb/ /db/*.sqlite3 /doc/api/ /doc/app/ /doc/features.html /doc/specs.html /public/cache /public/stylesheets/compiled /public/system/* /spec/tmp/* /cache /capybara* /capybara-*.html /gems /specifications rerun.txt pickle-email-*.html .zeus.sock **.orig .DS_Store /nbproject/ .idea /*.tmproj **.swp .env .powenv 

Чтобы создать файл .gitignore, в терминале перейдите в каталог приложений и используйте следующую команду

 touch .gitignore 

Затем вы можете открыть его в текстовом редакторе и поместить в него вышеуказанный код.

Я получал эту же ошибку приложения H10 с ошибкой в ​​Heroku. Я нажал «перезагрузить все динамики» в интерфейсе heroku, и проблема решена.

В моем случае я использовал переменные ENV в своем приложении, но не был установлен в конфигурации heroku.

Консоль heroku дала правильную ошибку:

 heroku console `validate_options': Missing required arguments: aws_access_key_id, aws_secret_access_key (ArgumentError) 

Затем установите конфигурацию ENV

 heroku config:set AWS_ACCESS_KEY_ID='key' 

Перезапустить Heroku

 heroku restart 

оно работает!!

Посмотрите, получаете ли вы

 bash: bin/rails: No such file or directory 

в журналах во время работы (heroku logs -t), если да, то выполните Run

 bundle exec rake rails:update 

Не перезаписывайте свои файлы, в конце эта команда создаст

  create bin create bin/bundle create bin/rails create bin/rake 

нажмите эти файлы на героку, и все готово.

Корень проблемы, с которой я столкнулся, состоял в том, что у меня не было базы данных. Чтобы решить проблему, я сначала экспортировал свою локальную базу данных:

 $ heroku addons:add heroku-postgresql:dev $ heroku addons:add pgbackups $ PGPASSWORD=mypassword pg_dump -Fc --no-acl --no-owner -h localhost -U myuser mydb > mydb.dump 

Затем импортировал его в Heroku:

 $ heroku pgbackups:restore DATABASE 'http://site.tld/mydb.dump' 

В этих примерах заменяются переменные: mypassword , myuser , mydb и http://site.tld/mydb.dump . Обратите внимание, что мне пришлось загрузить дамп на временный сервер.

Решив все мои проблемы, я написал краткое руководство по развертыванию Enki в Heroku, которое можно найти здесь .

Я получил такую ​​же ошибку выше, как «приложение разбилось», и журналы приложений heroku не показывают много информации, связанной с причинами ошибки. Затем я перезапустил dynos в heroku, а затем он показал ошибку, говорящую о дополнительной фигурной скобке в одном из файлов index.js в моей настройке. Проблема была исправлена ​​после ее удаления и перераспределения приложения на герою.

Надеюсь, это будет полезно для тех, кто сталкивается с той же проблемой.

Пройдя весь список ответов, я наткнулся на этот сайт: https://status.heroku.com/, где подробно рассказывается о текущем статусе / инцидентах с Heroku. Всегда безопасно проверять происшествия, прежде чем ударить головой о стену. Для меня это был приложенный отчет об инциденте, опубликованный по вышеупомянутой ссылке, который вызывал ошибку.

ОБНОВЛЕНИЕ СЕРВИСНОГО ИНЦИДЕНТА

Сегодня я столкнулся с той же проблемой. Я сделал heroku run rake db:migrate хотя раньше мигрировал модель, и приложение не разбивается.

Будьте очень осторожны при копировании и вставке кода. Иногда, когда вы добавляете блок в файл, он отформатирован неправильно и приведет к ошибке.

У меня была эта проблема раньше и получила эту ошибку: неожиданный tIDENTIFIER, ожидающий keyword_end

Была такая же проблема. для меня это была ошибка в фильтрах before_action (потому что пустая БД). Проверьте фильтры before_action, возможно, они выбрасывают неэкономные исключения.

У меня возникла эта проблема при попытке запустить Rails в подкаталоге, а не в / . Например, у меня было приложение Angular / Node / Gulp, работающее в /client и приложение Rails, работающее в /server , но оба они были в одном и том же git-репо, поэтому я мог отслеживать изменения в интерфейсе и в конце. Я получил эту ошибку, пытаясь развернуть их в Хероку. Для всех, у кого есть эта проблема, вот пользовательский buildpack, который позволит запускать Rails в подкаталоге.

https://github.com/aarongray/heroku-buildpack-ruby

У меня была такая же проблема (такая же ошибка на герою, работающая на локальном компьютере), и я пробовал все перечисленные здесь решения, включая heroku run rails console которая запускалась без сообщений об ошибках. Я пробовал heroku run rake db:migrate и heroku run rake db:migrate:reset несколько раз. Ничто из этого не решило проблему. Просматривая некоторые файлы, которые используются в процессе производства, но не в среде dev, я нашел в файле puma.rb некоторые пробелы. Надеюсь, это поможет кому-то, у кого есть такая же проблема. Изменение этого делало его работу

  ActiveRecord::Base.establish_connection End 

в

  ActiveRecord::Base.establish_connection end 

Я столкнулся с той же проблемой при развертывании в Heroku (сбой приложения). Журналы не указывали, в чем проблема. Консоль Heroku отображала синтаксическую ошибку в коде дополнительной скобки. Удивительно, но у меня не было проблемы с локальными рельсами во время запуска приложения, и, следовательно, он пропустил его. После исправления и git нажмите на Heroku, приложение начало работать на Heroku!

Я обновил свои настройки из app.set (‘ip_address’, process.env.IP || ‘127.0.0.1’ );

в

app.set (‘ip_address’, process.env.IP || ‘0.0.0.0’ );

который я изменил для хоста Openshift

У меня был H10 с Heroku и узлом из-за неправильного имени основного файла кода. Редактировать package.json :

 { ... "main": "correct_file_name.js", ... "scripts": { "start": "node correct_file_name.js" } } 

Или переименуйте файл.

В моем случае Procfile я использовал, разбивал все. Heroku ищет Procfile и применяет его настройки при запуске приложения – очевидно, что настройки dev, которые я использовал, не имели никакого смысла для prod-сервера. Мне пришлось переименовать его в Procfile.dev и все началось нормально.

  • Выбор устройства для Android - мое устройство кажется офлайн
  • Ошибка развертывания: запуск Tomcat не удался, порт 8080 сервера уже используется
  • Как найти полное имя сборки?
  • Как ссылаться на другую версию dll с помощью MSBuild
  • Как я могу развернуть приложение .NET, использующее ODAC, без установки всего компонента пользователю?
  • Использование Maven для развертывания
  • Dll как в бункере, так и в gac, который используется?
  • PhpStorm - преимущества редактирования развернутых файлов напрямую, а также загрузка и синхронизация
  • System.IO.FileNotFoundException: не удалось загрузить файл или сборку «X» или одну из ее зависимостей при развертывании приложения
  • развертывание фреймворка zend на сервере
  • Как вручную установить веб-сервис на Tomcat 6?
  • Давайте будем гением компьютера.