Próbowałem biec
heroku run rake db:migrate
I otrzymywałem błąd
Nie można uruchomić więcej niż 1 hamowni o dowolnym rozmiarze.
Zobacz poniżej, jak naprawić ...
Odpowiedzi:
Najbardziej efektywne
w uruchomieniu konsoli:
heroku ps
wynik jest taki:
run.4859 (Free): up 2016/01/12 21:28:41 (~ 7m ago): rails c
Więc liczby 4859 reprezentują sesję, która jest otwarta i musi zostać zamknięta. Aby naprawić błąd, który musisz uruchomić (Obviusly, zastąp liczbę 4859 uzyskaną liczbą):
heroku ps:stop run.4859
To bardzo proste rozwiązanie.
Odpowiedzią jest szukanie otwartych sesji heroku (możesz użyć „heroku ps”, jak wskazuje john poniżej), w moim przypadku rozpocząłem już sesję konsoli heroku 30 minut wcześniej i po prostu o niej zapomniałem. Jeśli więc zobaczysz błąd „Nie można uruchomić więcej niż 1 hamowni o wolnym rozmiarze”, po prostu zamknij wszystkie istniejące konsole lub inne otwarte sesje heroku.
Mam nadzieję, że to zaoszczędzi komuś dziesięć minut, które zajęło mi dojście do siebie.
heroku psa następnie heroku ps:stop <DYNO>zatrzymasz proces.
heroku ps) jest jak linux "netstat". Pokaże Ci uruchomione procesy. W moim przypadku to wyglądało run.5656 (Free): up 2016/01/12 21:28:41 (~ 7m ago): rails c. Jak widać przez pomyłkę zostawiłem otwartą konsolę szyn. Musiałem więc tylko biec heroku ps:stop run.5656. Easy Peasy :) Dzięki John!
heroku ps:stop run.9121 --app my-app-nameMój numer basha to 9121. Możesz zobaczyć swoje zheroku ps
W moim przypadku pobiegłem, heroku ps:restartaby zrestartować wszystkie hamownie i heroku run *polecenie ponownie zadziałało.
Przykłady
Jeśli masz tylko jednego pilota Git do Heroku, użyj tego:
heroku ps:restart && heroku run *
Jeśli masz wiele pilotów Git dla Heroku, użyj tego:
heroku ps:restart --remote your-remote-name && heroku run * --remote your-remote-name
LUB
heroku ps:restart --app your-heroku-app-name && heroku run * --app your-heroku-app-name
Zastąp *swoją komendą, np. consoleDla konsoli Rails.
Miałem your-heroku-app-nametutaj na myśli subdomenę Twojej aplikacji Heroku. Na przykład jeśli adres URL Twojej aplikacji to https://cute-cat.herokuapp.com, oznacza your-heroku-app-nameto cute-cat.
Jeśli nie jesteś pewien / zapomniałeś, jaka jest twoja zdalna nazwa Git dla Heroku, git remote -vmoże ci w tym pomóc.
Przykład:
$ 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)