Skocz do zawartości
  • Cześć!

    Witaj na forum RootNode - aby pisać u nas musisz się zarejestrować, a następnie zalogować. Posty pisane z kont niezarejestrowanych nie są widoczne publicznie.

[hostido.pl] - informacje nt. usług, oferty, promocji


Rekomendowane odpowiedzi

Opublikowano
W dniu 29.02.2024 o 15:42, Hostido.pl napisał(a):

Chcemy potwierdzić, że node.js nadal będzie dostępny, tak jak wszystkie inne komendy SSH. Oznacza to, że użytkownicy mogą kontynuować korzystanie z aplikacji opartych na node, jednak należy mieć na uwadze, że wsparcie GUI

@Hostido.pl  Kontynuując  wątek usuniętej funkcjonalności aplikacji node zapytam o ich uruchamianie. Przedtem restartem aplikacji zajmował się "panel", w którym podawaliśmy ścieżkę do pliku startowego node... Teraz tego nie ma, więc jak obsłużyć restart aplikacji node po jej zakończeni np.: z powodu nieoczekiwanego błędu lub restartu serwera, by "wstała" ponownie ?

Mamy przykładową aplikację, która symuluje zakończenie po 30 sekundach. Celem jest jest ponownie uruchomianie w "nieskończoność"  :


KATALOG: /home/host2xxxx/domains/devnodeapp.pl/mytemp/testnode/node testtimer.js

/** node testtimer.js */

let counter = 0;

const timer = setInterval(() => {
  console.log(counter);
  counter++;

  if (counter === 30) {
    clearInterval(timer);
  }
}, 1000);


Komenda linuxa nohup lub screen w tym wypadku uruchomi aplikację w tle, ale nie już jej restart ....
Do usług typu daemons OS dostępu nie mamy. PM2, a process manager  - też chyba nie da rady...

Piszę tutaj a nie am PM bo może komuś te info się przyda :)

Opublikowano

Hmmmm:
 

Cytat

W parametrze --app-root należy wskazać ścieżkę do głównego katalogu aplikacji.

Ale nie ma w tej instrukcji informacji o samej nazwie pliku startowego  aplikacji - 
Musi to by: index.js ?

Opublikowano
2 godziny temu, Mion napisał(a):

Komenda linuxa nohup lub screen w tym wypadku uruchomi aplikację w tle, ale nie już jej restart ....

Zawsze do tego możesz użyć crona.

Opublikowano

@Mion Przy tworzeniu aplikacji z komendy

 

cloudlinux-selector create [--json] [--interpreter <str>] [(--user <str> | --domain <str>)] --app-root <str> --app-uri <str> [--version <str>] [--app-mode <str>] [--startup-file <str>] [--entry-point <str>] [--env-vars <str>] [--passenger-log-file <str>]

 

--startup-file tu masz parametr odpowiadający za plik. 

 

 

Można zainstalować pm2 do monitorowania aplikacji oraz utworzyć zadanie cron, które ewentualnie uruchomi daemona pm2 jak padnie:

npm install pm2
mkdir ~/bin
ln -s ~/node_modules/pm2/bin/pm2 ~/bin/pm2
pm2 start test.js
pm2 save

Zadanie cron uruchamiane np. co minutę:

out=$(pm2 ping); if [[ $out = *"Spawning PM2 daemon"* ]]; then pm2 resurrect > /dev/null; fi

 

  • Super! 1

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Korzystając z forum, wyrażasz zgodę na: Warunki użytkowania, Regulamin, Polityka prywatności.