12

Capistranoを使用してアプリを本番環境にデプロイできましたが、データベースの処理方法がわかりません。私はsubversionとpassengerを使用しています。

cap deployを実行すると、新しいデプロイメントですべてが新しく開始されます。データベースに追加されたデータを一掃します。明らかに、解決策があるはずですが、これに対処する方法についてオンラインで何も見つからないことに非常に驚いています。Capistranoのドキュメントと多くのチュートリアルを読みました。

私が見つけることができる最高のものは、ユーザー生成コンテンツを共有ディレクトリに入れることについて説明しているAdvanced Railsレシピ本ですが、それは正確には正しいわけではありません。

Capistranoを使用して展開する場合、データベースをどのように処理しますか?

4

1 に答える 1

25

SQLiteを使用していて、データベースをデフォルトの場所に保持している可能性があります。データベースは削除されておらず、取り残されています。

database.ymlを編集して、本番データベースを共有の場所「../../shared/database.yml」などに保持するように指示する必要があります(絶対パスを使用するか、ボーナスポイントを使用する方がよい場合があります) MySQL)。

capistranoを介してデプロイすると、タイムスタンプ付きのディレクトリにアプリの新しいコピーが作成されます。データベースは古いタイムスタンプ付きのディレクトリに残されています。

于 2009-10-20T08:32:37.053 に答える