使用 docker 运行 node 需要使用 pm2吗?
世界只因有你
世界只因有你 2017-04-26 09:01:09
0
4
1683

使用 docer 应该尽量遵循 one process per container
但是 node 挂了怎么办?
我尝试在容器内使用 Pm2,但是容器一起来就结束了, docker 容器至少需要保证有一个进程,如果没有就会退出.可是我使用pm2为什么不行呢?
如果不能使用 pm2, docker run restart always 可以解决吗?

世界只因有你
世界只因有你

모든 응답(4)
刘奇

pm2를 docker에서 사용하는 경우 pm2 명령을 pm2-docker 명령으로 변경해야 포그라운드에서 실행될 수 있습니다. 그리고 개인적으로는 docker에서 pm2를 사용할 필요가 없다고 생각합니다. node 프로세스가 멈추면 해당 컨테이너도 실행이 중지되므로 docker 컨테이너를 시작할 때 restart=always 매개변수를 추가하면 자동으로 다시 시작됩니다

大家讲道理

pm2 공식 웹사이트의 docker 통합 문서를 참고하세요

曾经蜡笔没有小新

pm2가 포그라운드에서 실행되고 있는지 확인해야 합니다. 즉, dockerfile의 CMD 또는 ENTRYPOINT에서 시작된 프로세스는 데몬 모드에서 실행될 수 없습니다.

某草草

컨테이너를 실행할 때 사용할 CPU 코어 수를 지정할 수 있습니다. 코어를 하나만 할당하면 CPU의 기본 스케줄링 단위가 스레드 전용이므로 여러 Node.js 프로세스를 시작할 필요가 없습니다. 하나의 코어는 하나의 Node.js 프로세스를 실행하는 것을 의미합니다

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿