2

私はUbuntuで自分の教会用のRailsアプリを開発しています。Ubuntuでもホスト型VPSを使用しています。Capistranoを使用して定期的な更新を展開しています。ただし、必然的に、私のローカルボックスで動作するアプリは、ホストにデプロイした後、環境が異なるために、常にいくつかの問題が発生します。

ローカルでテストおよび動作するものがホストで動作する可能性が同じになるように、展開を容易にするためのいくつかのプラクティス/テクニックは何ですか。(私はすでに「すべてのベンダー」アプローチを採用しています。)

私の最初の考えは、それ自体が最終的に展開されるローカルVPSイメージ(ある種の仮想アプライアンス)内で開発/作業することです。誰かこれをやっていますか?

環境の違いから生じる問題を最小限に抑えるために、他の人は何をしますか?どのホストが最適な展開オプションを提供しますか?

4

4 に答える 4

1

本番環境を最大限に模倣するステージ環境を設定してみてください。私は実際、いくつかのサーバーをこのように使用し、サブドメイン(staged.mydomain.com)を作成して、宝石が適切なバージョンであるかどうかをテストします。

また、読み取り専用ユーザーを使用して、この段階のインストールでライブデータと実際のデータをテストします。

このアプローチは、新しい展開が正常に機能し、問題を事前に解決できることを確認するのに役立ちます。

どのような問題を頻繁に扱っているかを知って、それらの外観を減らす方法を見つけようとするとよいでしょう。

于 2009-09-15T13:05:25.340 に答える
0

可能な限り、まったく同じバージョンのRuby、まったく同じバージョンのRails、まったく同じデータベースセットアップ、およびまったく同じ他のすべてを実行していることを確認してください。ライブセットアップと開発セットアップの違いが大きいほど、発生する可能性のある問題が多くなります。

于 2009-09-15T12:56:26.663 に答える
0

さて、あなたは実際にあなた自身の質問に答えました。

実稼働ボックスのステージング環境にデプロイできない場合は、それをコンピューターに正確にミラーリングしてみてください。その後、VMWareなどのプログラムを介してテストできます。

私の経験では、これは本当に重大な状況でのみ必要です。Ruby / Rails(環境で指定できるgemバージョン)が同じであれば、Railsアプリのデプロイに問題はないはずです。

実際、どのような問題が発生しているのかを知っておくと、より適切な解決策を提供できると思います。

于 2009-09-15T13:54:57.387 に答える
0

ほとんどのRails開発者はOSXを実行してUNIXサーバーにデプロイしますが、これが原因で問題が発生することはありません。

もちろん、raby、rails、mysqlなどのバージョンは同じである必要があります。

于 2009-09-15T15:59:30.053 に答える