这是我想象中的开发和部署过程:
- 创建项目目录
my_project
。 - 在其中安装所需的 Ruby 版本。
- 安装所需的 gem。
- 写一些代码。
- 使用
fpm
打包整个东西。 - 将 debian 软件包运送到生产箱并安装。
我使用 RVM 和 Bundler 来解决一些痛点,但 RVM 不关心创建可重定位的 Ruby 安装,所以你不能将 ~/.rvm/rubies
移动到项目目录中,并且期待一切顺利。您必须重写各种硬编码的 #!
行,在某些情况下,您必须将 .so
文件移动到 lib
目录中。我通过搜索互联网拼凑了一组脚本,这些脚本一起完成了我想要的,但整个事情感觉像是一个巨大的黑客攻击。
我不小心发现了 https://github.com/ot/bpt它可以用来构建允许完全可重定位的 Ruby 安装的东西,但该项目已经两年多没有被触及了,所以我有点犹豫要不要在它之上构建一些东西。
对于我没有看到的这个问题,是否有更优雅的解决方案?人们如何隔离和部署 Ruby 项目?我觉得这应该是一个已解决的问题。
最佳答案
关于ruby - 简化的 Ruby 代码部署,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14722222/