7

ステージングと本番の 2 つの環境を持つ Rails Elastic Beanstalk アプリケーションがあります。アプリケーションとステージング環境を作成するときにeb init、データベース インスタンスを作成しました。私は eb コンソールを使用して実稼働環境を作成し、新しいデータベース インスタンスを作成しましたが、これは明らかに間違った動きであると認識しています。

2 つの環境で同じデータベース インスタンスを共有するにはどうすればよいですか? その場合、アプリでデータベースの移行を更新してステージングにデプロイするときはどうですか。ステージング環境で同じデータベースが使用されるため、ユーザーに表示されることを意味します。

この問題を処理するにはどうすればよいですか?

git aws.pushまた、データベースは上書きされませんが、ロールバックされた移行は削除されないことに気付きました。何か不足していますか?

4

1 に答える 1

5

次のオプションをお勧めします: Elastic Beanstalk 環境の外部で rds インスタンスを作成します。本番用とステージング用に別々のスキーマを作成します。接続文字列を EBS アプリケーションに渡します。EBS 環境間で rds インスタンスを共有すると、次のことができます。

  1. 複数の rds インスタンスを実行するとコストがかかるため、環境のコストを削減します。

  2. 本番環境とステージング環境を分離するのに役立ちます。

于 2013-05-06T19:03:26.853 に答える