2012-04-02 28 views
25

Prawie pewne osoby napotkały ten problem wcześniej.Błąd Heroku H14 (brak uruchomionych procesów internetowych)

Zastosowano wszystkie instrukcje dotyczące konfiguracji węzła i npm. Podczas popychania do heroku nie było żadnych błędów. Ale kiedy otworzyć aplikację, to pokazuje "Błąd aplikacji"

heroku ps 

powraca

Process State  Command  
------- --------- ------------ 
main.1 up for 1m node main.js 

podczas

heroku logs 

powraca

Error H14 (No web processes running) -> GET mewtwo.herokuapp.com/ dyno= queue= wait= service= status=503 bytes= 

Próbowałem ponownym uruchomieniu aplikacji z heroku restart ale ul źle dostaje ten sam błąd. Google wokół i nie było innego rozwiązania niż heroku restart. Ktoś próbował innych metod?


Odpowiedź: (I umieścić go tutaj, ponieważ mój rep jest zbyt niska, by jeszcze pisać odpowiedź)

Ok końcu zorientowaliśmy się sam.

Podobno w Procfile, oświadczyłem

main: node main.js 

ale Heroku wykorzystuje

web: node main.js 

Myślałem nazewnictwo może być cokolwiek chcesz, ale w rzeczywistości jest to surowe, trzeba użyć internecie bo to działa (Heroku nie podkreśla tego - bądź ostrożny) przynajmniej na razie, dopóki nie zrozumiem, dlaczego ta surowość i czy mogę zmienić nazwę.

+0

Czy jesteś pewny, że kupiłem WEB- instancje pracowników? – sarnold

+0

czy muszę kupić? Po prostu podążam za tutorialem instalacji - https://devcenter.heroku.com/articles/nodejs, Przypuszczam, że jest to bezpłatne, chyba że chcesz dodać więcej? –

+0

znalazłem cytat "Uruchomienie więcej niż jednego dyna przez dłuższy czas może spowodować naliczenie opłat na twoje konto". Prowadzę tylko jedną. –

Odpowiedz

13

Nazwa procesu WWW musi być web, a to jest proces, który Heroku zawsze będzie skalować do "1" przy pierwszym wdrożeniu.

Inne usługi w pliku Procfile można nazwać tym, czego potrzebujesz, ale musisz je skalować na początku (aby w razie potrzeby móc uruchamiać tylko procesy deweloperskie).

Więcej informacji tutaj: http://neilmiddleton.com/the-procfile-is-your-friend/ (buforowana wersja: https://web.archive.org/web/20130926005616/http://www.neilmiddleton.com/the-procfile-is-your-friend)

+0

Dodam, że jeśli naprawdę chce mieć nazwany proces jako "główny", który nie ma nic wspólnego z siecią (dla procesu pracy, nie powinno być routingu http), mógłby to zrobić poprzez skalowanie web = 0 main = 1, a następnie ponownie uruchom –

+0

Nie trzeba ponownie uruchamiać skalowania. –

71

miałem ten sam problem, ale dla mnie było to, bo potrzebne do uruchomienia heroku ps:scale web=1

+11

Jest to konieczne, jeśli początkowo zapomnisz wcisnąć 'Procfile'. W takim przypadku nawet naciśnięcie jednego z nich później lub uruchomienie 'heroku ps: restart 'nie pomoże. – kynan

+3

Nic nie widziałem po dodaniu pliku Procfile. ale ustawienie PS: scale web = 1 sprawiło, że rzeczy zaczęły działać od razu. dzięki! – emilebaizel

+0

Zdarzyło mi się po skopiowaniu aplikacji używając 'widelca heroku' –

Powiązane problemy