2012-01-06 14 views
1

私はRVM、Railsの3、& Rubyのv1.9.2を使用して自分のサーバー上に新しいRailsのアプリの開発を開始しました。私はコードリポジトリとしてGitを使用しています。シンプルなアプリだから、余分なサーバーを使いたくない。私はただ私が開発している同じサーバーから直接私のアプリを展開したいです。同じマシンからのRailsアプリを開発&展開

私は私のアプリを提供するためのApache/wのはPhusion旅客をインストールしましたが、私は私の開発ディレクトリを指すことは私のRAILS_ENVが「開発」に設定されているとしてそれを行うことができないことを実現しています。 (RAILS_ENVを「制作」に設定してアプリを提供しようとしたときに、アセットパイプラインやその他の問題に関するファイルアクセス許可のエラーがあることが判明しました)

アプリを配備する最も単純で簡単な方法は何ですか?私は単純にすることができます: 1)は、レールの生産を実行するために別のユーザーを作成します(devにRailsは現在、私のUbuntuサーバー上で私として実行) 2)別のディレクトリに私のレポのクローンを作成し、それに応じて 3をApacheを設定)と私のデータベースをシード生産に必要なデータ(ここで必要なデータはあまりありません) 4)他に何がありますか?

私はカピストラーノで簡単に見てきたが、それは、このシンプルなアプリのためにやり過ぎのように思えます。私は、いくつかのデータ入力のための簡単なWebインターフェイスを提供することができればいいだけです。 git pushのように思えますが、私はこれをやっていないので多分間違っていますか?また、もし私がgit pushすれば、 "production"ディレクトリ内のファイルパーミッションがすべて正しく設定されていることを確認するにはどうすればいいでしょうか?任意のアイデアを

感謝。

答えて

2

いいえ、上記にはカピストラノは必要ありません。この段階で私はそれがあなたをさらに混乱させるようになると感じています。

私はあなたが最初の民間のGithubや無料のBitbucketアカウントにレポを保存することをお勧めしたいです。あなたがすべきことは、「開発」のために1つのフォルダを保持することです。

旅客は「ちょうど」Apacheで動作するモジュールであることに注意してください。だから、あなたがしなければならないことは、Apacheの下に仮想ホストをセットアップし、それをあなたのシステム上の別のフォルダに向けることです。この例では、考える:それは問題ではありませんので

~/rails/myapp_development/~/rails/myapp_production/

旅客は常に、生産のアプリを実行します。あなたは、すなわちあなたが指定したmysqlアダプタを持っていると言う、生産名前空間の下にGemfileに記載されているすべての宝石を無視するように、開発のセットアップでbundle --without=productionを行うことができ、あなたはこれを無視することができますし、Railsは唯一SQlite宝石に頼ってきました。

これで、開発フォルダ内で開発し、コミットし、BitBucketにプッシュすることができます。デプロイメントは、単にプロダクションフォルダに入り、git pulltouch tmp/restart.txtを実行するだけです。

+0

上記の#2を詳しく説明しましたが、外部のgitosis-esqサービスを利用することで、作業が簡単になりました。 –

+0

マイケルありがとう - これは素晴らしい仕事。私はBitbucketの無料+専用オプションのためにBitbucketに行くことにしました。私はこの投稿に従ってApacheを設定しました:http://stackoverflow.com/questions/6162196/setting-up-rails-app-on-apache-with-passenger-rails-doesnt-seem-to-loadそして私は立ち上がっています単純なgit pushとgitを使って、私のアプリケーションのさまざまなdev/productionディレクトリに移動します。よく働く! – Sly

+0

私の喜びSly! –

関連する問題