2012-07-10 3 views
5

배포 용 git을 사용하여 EC2 인스턴스에서 내 node.js 응용 프로그램을 관리하려면 Supervisor을 사용하고 있습니다. 수퍼바이저는 응용 프로그램이 제대로 작동하는지 확인하는 작업을 잘 수행하지만 새 서버 측 코드를 원격 서버에 전송할 때마다 변경 내용을 인식하지 못하는 경향이 있습니다. 관리자 프로세스를 종료하고 다시 시작해야합니다. 내가 잘못하고있는 일이 있습니까, 아니면이 표준적인 행동입니까?관리자가 코드 변경을 인식하지 못하는 이유는 무엇입니까?

답변

10

이것은 일반적인 동작입니다. supervisord는 코드의 변경 사항을 감지하지 않습니다. 프로세스가 스스로 멈추거나 죽는 경우에만 프로세스가 다시 시작됩니다.

변경 사항을 누를 때마다 애플리케이션을 다시 시작하도록 supervisord에 지시하십시오. supervisorctl restart programname은 괜찮습니다. 감독관을 죽이고 다시 시작할 필요가 없습니다.

수퍼바이저 구성이 변경된 경우 supervisorctl update을 사용하십시오.

+0

고마워요! 'supervisorctl'은 어디에서 살고 있습니까? 어떤 구성을 설정해야합니까? – user730569

+0

@ user730569 : '감독관'과 같은 곳; http://supervisord.org/introduction.html#supervisor-components 참조. –

+0

@ user730569 : 문서의 유용한 부분 : http://supervisord.org/running.html –

관련 문제