1

私はbox1でRoRアプリケーションを実行しています...それは明らかにRuby、RubyGems、Railsが他のいくつかのgemとともにそのボックスにインストールされています。

このセットアップ全体をコピーして、box2でも独立して実行できるようにします。

どちらのボックスにもインターネット接続はありませんが、別のマシンでインターネット接続を利用できます。

私が見る限り、私はする必要があります-

  • box2にRubyをインストールします(RPMがありますが、問題ありません)
  • box2にRubyGemsをインストールします(RPMがありますが、問題ありません)
  • Railsをインストールする(これを行うにはどうすればよいですか?
  • Railsアプリディレクトリ全体をbox2にコピーしますか?

Ruby on Railsサイトでの唯一のガイダンスは実行するgem install railsことですが、インターネット接続なしではこれを実行できません。

ではbundle package、box1で実行してから、結果のgemファイルをbox2にコピーし、それぞれにローカルgemインストールを実行してそれらをインストールできますか?または、単に'usr / local / lib / ruby​​ / gems / 1.9.1 / gems'ディレクトリをbox2にコピーできますか?

次に、RailsアプリをRPMにパックして、好きな場所に簡単にデプロイできるようにする予定です... bundle packageRPMディレクトリ構造にgemファイル(からの結果)を含めて、RPMを.specに指示することはできますか?インストール中にgemインストールを実行するファイル?そうすれば、RPMがインストールされているときに必要なgemがインストールされます。

もっと簡単な方法を見落としているか、何かを誤解している可能性があります。もしそうなら、私に教えてください。何か助けはありますか?

4

1 に答える 1

1

VagrantRailscastsのエピソードをご覧ください。

Vagrantは、すべてのgemがインストールされている仮想マシンにすべてを配置することで、「どこにでもデプロイ」の問題を解決します。

もちろん、これはインターネットアクセスの欠如によるあなたの当面の問題を解決しませんが、それはあなたが正しい軌道に乗っているように聞こえます。

于 2012-04-04T17:10:47.437 に答える