使用OS软件包pipe理(deb,rpm)pipe理Web应用程序部署时,哪些最佳实践或陷阱?

我在周末的一次谈话中听到了这个消息,听起来像是一个好主意,我想到了几个原因:

  • 确保依赖性得到满足并且不被破坏(例如,web应用程序需要特定版本的imagemagick)
  • 有助于快速启动新服务器
  • 与os软件包保持一致,易于部署
  • (可能)保持configuration更新与代码,以便更改为apache,php等configuration保持最新的代码依赖关系。 我可以看到这是一个灰色地带,因为它正在进入configurationpipe理。

没有什么问题。 这肯定比默认好。 太多peopel只是检查每个服务器上的版本控制。 但是,它不如为Web部署所做的程序。 我个人喜欢使用部署资源的厨师。

部署资源从svn或git检出一个新的目录,符号链接configuration文件,然后改变你的web服务器用来指向的符号链接。 这意味着如果你需要,回滚就像改变一个配方一样简单。 然后厨师只是改变一个符号链接。

这确实是全部主观的。 厨师确实有一个学习曲线,但它简化了许多pipe理任务。 它还使得“启动服务器”,pipe理依赖关系和保持configuration文件更新变得容易。 它使您可以将包pipe理,configurationpipe理和系统pipe理整合到一个地方。

编辑:添加更多关于厨师的信息