Nginx / Unicorn在部署时未显示更改

时间:2012-04-11 14:33:59

标签: ruby-on-rails-3 nginx unicorn

我有一个奇怪的问题。我们正在运行Rails 3.2.2,Nginx和Unicorn。例如,如果我们将文本更改为index.html.erb,则部署更改不会显示。

如果我查看生产服务器上的文件,我可以看到更改实际上位于“当前”目录中。所以我知道它已被正确发布。

好像Unicorn没有自我更新或正确重启(即使我在部署时重新启动)。

甚至更奇怪 - 我更改了应用程序电子邮件smtp设置。部署后我得到SMTP 535错误的用户名/密码。但是,如果我刷新3次就行了。再次 - 这可能是某种nginx / unicorn工作者缓存旧代码吗?

我今天必须部署这个项目所以要承受这个问题。任何帮助赞赏。谢谢!

1 个答案:

答案 0 :(得分:0)

涉及许多不同的变量。根据您配置Unicorn的方式,您可能需要发送unicorn master USR2 signal信号以启动新的主进程,然后向旧的独角兽主进程发送QUIT信号以获取它。

根据生产服务器环境和部署机制,您可以利用foreman之类的工具在部署时更轻松地管理独角兽。