如何打包ruby应用程序进行离线安装?
我有一个无法访问Internet的Intranet服务器,我需要在其上部署RoR应用程序。
我的过程将是下载Ruby,安装它,下载Rails,安装它等等。但我想在我的Gemfile中安装多个gem。 如何在Intranet服务器上获取这些内容? 我是否必须单独下载它们,或者有没有办法将它们打包?
通过运行以下命令,您可以告诉bundler将供应商所需的所有gem告诉供应商:
bundle install --deployment
这将在应用程序的根目录中创建vendor
目录。 将应用程序移动到独立服务器时,请确保包含此目录。 您仍然需要安装Ruby,RubyGems和bundler gem。
对于Ruby和RubyGems,您可以下载各自的安装程序。 您可以使用gem fetch
下载Bundler的副本
gem fetch bundler
这将下载像bundler-1.6.5.gem
这样的gem文件,你可以在独立服务器上安装:
gem install bundler-1.6.5.gem