Po uruchomieniu aplikacji Nodejs pod numerem pm2 inni użytkownicy serwera nie mogą uzyskać dostępu do procesu.Jak uruchomić pm2, aby inni użytkownicy serwera mogli uzyskać dostęp do procesu?
Nawet jeśli zacznę PM2 z katalogu niestandardowych (nie bieżącego użytkownika ~/
, co PM2 używa domyślnie):
HOME=/var/www pm2 start app.js
katalog jest dostępny dla każdego użytkownika (w porównaniu do ~/
, ale nie nadal nie ma możliwości, aby inny użytkownik serwera mógł uzyskać dostęp do procesu:
Kiedy inny użytkownik serwera robi pm2 list
, pokazuje mu 0 procesów uruchomionych - ale są (rozpoczęte przez innego użytkownika) i kiedy inny użytkownik próbuje HOME=/var/www pm2 list
, CLI zgłasza błąd:
events.js:72
throw er; // Unhandled 'error' event
^
Error: connect EACCES
at errnoException (net.js:905:11)
at Object.afterConnect [as oncomplete] (net.js:896:19)
Więc zastanawiam się, jak upewnić się, że użytkownicy mogą mieć dostęp do procesów PM2 prowadzonych przez innych użytkowników serwera? Lub inaczej podejść do niego?
Zastanawiam się dlaczego każdy użytkownik serwera jest w stanie dokonać git pull
wdrożyć najnowszy kod źródłowy z repozytorium Git, ale nie można ponownie uruchomić proces pm2
potem? Tylko użytkownik, który rozpoczął proces pm2
, może go ponownie uruchomić ... Weird.
Jedna instancja pm2 należy tylko do użytkownika, który ją uruchomił. – soyuka