Jak widać na podstawie mojego pytania, jestem nowy w tym ...Jak pozostawić serwer Node.js na EC2 działający wiecznie?
Zbudowałem swoją pierwszą stronę internetową, skonfigurowałem swój pierwszy serwer Node.js, aby go wyświetlał, a następnie przesyłałem wszystko na żywo na EC2.
Testowałem wszystko na moim adresie IP EC2 i wszystko wydaje się działać.
Do tej pory testowałem swoją aplikację lokalnie, więc ma sens, że gdybym zamknął terminal, app.js przestałby działać, aby nic nie zostało dostarczone na localhost.
Teraz, gdy mój serwer jest na EC2, dzieje się to samo ("oczywiście" można powiedzieć ...) za każdym razem, gdy zamykam terminal.
Więc moje pytanie brzmi: w jaki sposób mogę zachować mój serwer node.js uruchomionych na EC2 dla jak ... forever..so że moja strona pozostaje wiecznie żyć .. :)
Czytałem coś o module węzła nazywane "na zawsze", ale zastanawiam się (bycie nowym i wszystkim). Dlaczego ta "wieczna" funkcjonalność nie jest domyślnym ustawieniem systemu Node.js-EC2?
Mam na myśli, popraw mnie, jeśli się mylę, ale czy nie chodzi o to, aby skonfigurować serwer internetowy i pchać go na żywo, aby pozostał na zawsze? Czy to nie jest to, co serwery i tak mają robić (nieskończenie nasłuchując żądań)? A jeśli tak, to dlaczego potrzebujemy dodatkowych modułów/ustawień, aby to osiągnąć?
Dzięki za pomoc .. Jak widać nie jestem tylko szuka rozwiązania, ale o wyjaśnienie, jak również dlatego, że mam naprawdę mylić .. :-)
EDIT (kilka szczegółów ty może wymagać) - Po zainstalowaniu moją aplikację na EC2 to są kroki, które śledzę na terminalu (Aplikacja działa na Amazon Linux
przy okazji):
wpisaniu ssh -i xxxxxxxxxxx.pem EC2 użytkownikowi @ ec2-xx-xx-xx-x.eu-west-1.compute.amazonaws.com na terminalu terminal
Po zalogowaniu na maszynę Amazon I następnie przejdź do odpowiedniego folderu i uruchomić węzeł app.js
Istnieją 3 foldery w komputerze:
node
,node_modules
i*name of my app*
app.js
przebywa w*name of my app*
Po tym, witryna żywo idzie na mojej EC2 OD
Gdy zamknę terminalu, wszystko jest wyłączony
Dla celów testowych/programisty, działa to jak wdzięk dla konfiguracji NodeJS Express. Tak się cieszę, że nie muszę już dłużej otwierać terminalu Putty! Inna uwaga - wskazówka dla początkujących (takich jak ja): Aby zamknąć uruchomiony proces w środowisku 'screen', naciśnij * CTRL + C *, aby go zatrzymać (jeśli to nie zadziała, może być konieczne znalezienie ID procesu lub PID i zabij go przez nowy Putty/terminal działający z głównego środowiska), a na koniec wpisz 'exit', aby zamknąć środowisko ekranu i powrócić do głównego. – bigp
Co jeśli chciałbym zachować wiele rzeczy działających, takich jak serwer mongodb, serwer nodejs, serwer reagowania itp.? Wierzę, że screen -r zabrałby mnie tylko do tego, który jest inicjowany przez 'screen'. Szukam czegoś takiego jak 'screen myScreenOne',' screen myScreenTwo', etc? Możemy to zrobić? – Aditya
Czy można bezpiecznie używać tego w środowisku produkcyjnym? I czy nadaje się do aplikacji Java? –