问题
I'm using Supervisor to manage my node.js applicaton on an EC2 instance with git for deployment. Supervisor does a good job of making sure my application stays up, but whenever I push new server-side code to my remote server, it tends to not recognize those changes. I need to kill the supervisor process and restart it. Is there something I'm doing wrong, or is this standard behavior?
回答1:
This is standard behaviour; supervisord does not detect changes in code. It only restarts processes if they themselves stop or die.
Just instruct supervisord to restart the application whenever you push changes. supervisorctl restart programname
is fine, no need to kill and restart supervisord itself.
If the supervisord configuration changed, use supervisorctl update
.
来源:https://stackoverflow.com/questions/11422492/why-is-supervisor-not-recognizing-code-changes