programing

Windows에서 forever 모듈을 사용하여 Node.js 애플리케이션을 중지하는 방법은 무엇입니까?

itsource 2021. 1. 14. 08:17
반응형

Windows에서 forever 모듈을 사용하여 Node.js 애플리케이션을 중지하는 방법은 무엇입니까?


나는 nodejs APP의 forever 모듈에 관한 많은 질문을했지만 내 대답을 찾지 못했습니다.

Forever모듈은 Linux 상자에서 잘 작동하지만 이제는 Windows 7에 내 APP를 넣고 영원히 실행하려고합니다. 먼저 영원히 모듈을 설치했습니다.

npm install forever -g

그 후 나는 내 앱을

forever start app.js

app.js 파일이 영원히 실행되고 있으며 내 앱에 성공적으로 액세스하고 있다고 말하면 정상적으로 실행되고 있습니다.

명령을 실행 forever stop app.js하면 오류가 발생합니다.

영구 파일이 실행되고 있지 않습니다.

Windows에서 내 응용 프로그램을 어떻게 중지 할 수 있는지 Windows에서 영원히 사용한 사람이 있다면 저에게 제안하십시오.


사용 forever list후 ID로 영원히 중지하십시오.forever stop 0

다음은 샘플 출력입니다.

user@some-server]$ forever list
info:    Forever processes running
data:        uid  command                                                  script forever pid   id logfile                          uptime        
data:    [0] 9Xzw ng serve --host 0.0.0.0 --port 4009         13164   29579    /home/ec2-user/.forever/9Xzw.log 7:1:20:50.412 
data:    [1] wOj1 npm run-script app-start-dev                                    29500   24978    /home/ec2-user/.forever/wOj1.log 0:0:5:3.433

다음 0은 출력의 첫 번째 열에있는 색인과 같습니다 . 두 개의 프로세스가 실행중인 경우 0또는 같은 인덱스를 사용 1하여 첫 번째 또는 두 번째 프로세스를 중지 할 수 있습니다 .

forever stop 0 또는 forever stop 1


나는 이와 동일한 문제가 있었고 그것이 내가 포트 80에서 프로덕션 사이트를 실행할 수 있도록 sudo (리눅스에서)로 영원히 시작했기 때문이라는 것을 알았습니다. 이것은 트릭을했습니다.

sudo forever list

Windows의 버그입니다. https://github.com/nodejitsu/forever/issues/337 앱을 중지해야하는 경우 작업 관리자를 열고 node.js 프로세스를 찾아서 죽입니다. 열심히하지만 일합니다.


이것은 @laktak의 답변을 확장하는 것입니다. forever listWindows에서 의 결과는 다음과 같습니다.

info:    Forever processes running
data:        uid  command              script                          forever p
id   id logfile                               uptime
data:    [0] an1b "C:\nodejs\node.exe" C:\sbSerialWidget\server.js 8780    1
0152    C:\Users\username\.forever\an1b.log STOPPED

처음에 어떤 ID가 ID인지 확실하지 않았지만 data의 두 번째 필드 다음의 첫 번째 항목이라는 것을 알았 으므로 관심있는 줄은 ID가 굵게 표시되고 기울임 꼴로 표시됩니다.

데이터 : [0] an1b C:\nodejs\node.exe C:\sbSerialWidget\server.js8780 1 0152 C : \ Users \ username.forever \ an1b.log STOPPED

따라서이 특정 인스턴스를 중지하려면 다음을 실행합니다.

forever stop 0

이것이 나처럼 혼란 스러웠던 다른 사람에게 도움이되기를 바랍니다.

참조 URL : https://stackoverflow.com/questions/14556852/how-to-stop-node-js-application-using-forever-module-on-windows

반응형