我有一个
RubyOnRails项目,并在ubuntu服务器上将它与Unicorn一起部署在Nginx上.
如果我更改其中一个配置文件,我需要重新启动Unicorn,但是当我杀死Unicorn的主进程并使用bundle exec再次启动时,它会关闭我的站点.
解决方法
在我的capistrano deploy.rb中我有:
desc "Zero-downtime restart of Unicorn" task :restart,:except => { :no_release => true } do run "kill -s USR2 unicorn_pid" end
这在“Lighting fast,zero-downtime deployments with git,capistrano,nginx and Unicorn”中有详细记载.