Heroku : Free size dyno를 1 개 이상 실행할 수 없습니다.


82

나는 달리려고했다

heroku run rake db:migrate

그리고 오류가 발생했습니다.

2 개 이상의 프리 사이즈 다이노를 실행할 수 없습니다.

수정 방법은 아래를 참조하세요.

답변:


112

가장 효과적인

콘솔 실행 :

heroku ps

결과는 다음과 같습니다.

run.4859 (Free): up 2016/01/12 21:28:41 (~ 7m ago): rails c

따라서 숫자 4859는 열려 있고 닫아야하는 세션을 나타냅니다. 오류를 수정하려면 실행해야합니다 (분명히 4859 번호를 얻은 번호로 바꿉니다).

heroku ps:stop run.4859

매우 간단한 해결책입니다.


이것은 나를 도왔다. 그리고이 대답은 받아 들여진 대답보다 더 설명 적입니다.
Barun

126

대답은 열려있는 heroku 세션을 찾는 것입니다 (아래에서 john이 지적한대로 'heroku ps'를 사용할 수 있음). 제 경우에는 이미 30 분 전에 heroku 콘솔 세션을 시작했고 잊어 버렸어요. 따라서 "사용 가능한 크기의 dyno를 2 개 이상 실행할 수 없습니다"오류가 표시되면 기존 콘솔이나 열려있는 다른 heroku 세션을 닫으십시오.

바라건대 이것은 누군가가 제 감각에 도달하는 데 걸리는 10 분을 절약 할 수 있기를 바랍니다.


29
이 작업을 수행 heroku ps한 다음 heroku ps:stop <DYNO>프로세스를 중지합니다.
John Beynon

14
@JohnBeynon 정답으로 이것을 좋아합니다. 내 엉덩이를 구했다! 다른 사람을위한 참고 : 첫 번째 명령 ( heroku ps)은 Linux "netstat"와 같습니다. 실행중인 프로세스를 보여줍니다. 제 경우에는 run.5656 (Free): up 2016/01/12 21:28:41 (~ 7m ago): rails c. 보시다시피 실수로 레일 콘솔을 열어 두었습니다. 그래서 내가해야 할 일은 달리는 것뿐이었습니다 heroku ps:stop run.5656. Easy Peasy :) 감사합니다 John!
B. Bulpett

2
또는 시도하십시오 : heroku ps:stop run.9121 --app my-app-name내 bash 번호는 9121. 당신은 당신의 것을 볼 수 있습니다heroku ps
multigoodverse

1
10 분은 꽤 좋습니다. 14 시간이 필요했습니다 ;- )
OBu

2
다른 사람들이 유사한 주제를 검색하는 데 도움이되므로 자신의 답변을 "솔루션"으로 표시하는 것이 좋습니다.
오부

6

똑같은 문제가 있었고이 페이지에 왔습니다. 읽은 후 무슨 일이 일어나고 있는지 깨달았지만 다음을 추가하고 싶습니다.

그냥 달려

heroku kill DYNO --app your_app_name

이 후 열려있는 모든 콘솔을 닫습니다.

그런 다음 db migrate 명령을 실행하면 작동합니다.


1

제 경우에는 모든 dyno heroku ps:restart를 다시 시작하기 위해 실행 했고 명령이 다시 작동했습니다.heroku run *

Heroku 용 Git 리모컨하나만있는 경우 다음을 사용하십시오.

heroku ps:restart && heroku run *

Heroku 용 Git 리모컨여러 개있는 경우 다음을 사용하세요.

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.

Heroku의 Git 원격 이름이 확실하지 않거나 잊어 버린 경우 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)
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.