Я пытался бежать
heroku run rake db:migrate
И получал ошибку
Невозможно запустить более 1 дино свободного размера.
См. Ниже, как исправить ...
Я пытался бежать
heroku run rake db:migrate
И получал ошибку
Невозможно запустить более 1 дино свободного размера.
См. Ниже, как исправить ...
Самый эффективный
в консоли:
heroku ps
результат примерно такой:
run.4859 (Free): up 2016/01/12 21:28:41 (~ 7m ago): rails c
Таким образом, числа 4859 представляют сессию, которая открыта и должна быть закрыта. Для исправления ошибки нужно запустить (очевидно, заменить число 4859 на полученное число):
heroku ps:stop run.4859
Это очень простое решение.
Ответ - искать любые открытые сеансы heroku (вы можете использовать «heroku ps», как указывает Джон ниже), в моем случае я уже запустил консольный сеанс heroku 30 минут назад и просто забыл об этом. Поэтому, если вы видите ошибку «Невозможно запустить более 1 дино свободного размера», просто закройте любую существующую консоль или другие открытые сеансы heroku.
Надеюсь, это сэкономит мне десять минут, чтобы прийти в себя.
источник
heroku ps
а затемheroku ps:stop <DYNO>
остановить процесс.heroku ps
) похожа на linux "netstat". Покажет вам запущенные процессы. В моем случае это выглядело такrun.5656 (Free): up 2016/01/12 21:28:41 (~ 7m ago): rails c
. Как видите, я по ошибке оставил консоль rails открытой. Так что все, что мне нужно было сделать, это бежатьheroku ps:stop run.5656
. Easy Peasy :) Спасибо, Джон!heroku ps:stop run.9121 --app my-app-name
мой номер bash был9121
. Вы можете увидеть свое сheroku ps
Была точно такая же проблема и пришла на эту страницу. После прочтения понял в чем дело но хочу добавить следующее.
просто беги
heroku kill DYNO --app your_app_name
После этого закройте все открытые консоли.
Затем запустите команду db migrate, она будет работать.
источник
В моем случае я побежал
heroku ps:restart
перезапустить все дино, иheroku run *
команда снова сработала.Примеры
Если у вас есть только один пульт Git для Heroku, используйте это:
heroku ps:restart && heroku run *
Если у вас есть несколько пультов Git для Heroku, используйте это:
heroku ps:restart --remote your-remote-name && heroku run * --remote your-remote-name
ИЛИ ЖЕ
heroku ps:restart --app your-heroku-app-name && heroku run * --app your-heroku-app-name
Замените
*
своей командой, например,console
для консоли Rails.Здесь я имел в виду
your-heroku-app-name
поддомен для вашего приложения Heroku. Например, если ваше приложение URL являетсяhttps://cute-cat.herokuapp.com
, это означает , чтоyour-heroku-app-name
естьcute-cat
.Если вы не уверены / забыли, какое у вас удаленное имя Git для Heroku,
git remote -v
могу вам в этом помочь.Пример:
$ git remote -v this-is-the-remote-name https://git.heroku.com/xxx.git (fetch) this-is-the-remote-name https://git.heroku.com/xxx.git (push) this-is-another-remote-name https://git.heroku.com/yyy.git (fetch) this-is-another-remote-name https://git.heroku.com/yyy.git (push)
источник