【发布时间】:2015-10-01 19:53:17
【问题描述】:
所以我的任务是打包一个 Ruby 应用程序。这个想法是消除 apt-get 任何包或 gem install 任何东西的需要。包是包罗万象的。
我已经找到了 Omnibus(也有 fmp-cookery,但它似乎并不为人所知)
我已经弄清楚了综合项目的一般结构,但现在遇到了具体问题:
1) 我有一堆在安装时与 Chef 一起运行的食谱。这些设置了 DB 和 nginx 配置。在目标机器上运行这些的最佳方法是什么?
2) 我在构建脚本中添加了一个捆绑安装行,但现在这重复了我的要求。例如 nokogiri 安装了两次。一次作为我的实际项目 Gem,另一次作为综合的另一个要求。那么我最终得到了 2 个二进制文件,一个在 /#{instal_dir}/embedded/bin 中,一个在 ${install_dir}/embedded/lib/ruby/.../gems 中,有什么办法可以防止这种情况发生吗?
【问题讨论】:
标签: ruby chef-infra bundler ls gitlab-omnibus