12

AWS は、さまざまな環境に関連して Beanstalk でさまざまな展開環境を管理する方法と、それらの設定をソース管理リポジトリに保存する方法を適切に説明していません。

次のように .ebextensions で python.config をセットアップする方法を明確に説明しています。

"aws:elasticbeanstalk:container:python:environment":
  DJANGO_SETTINGS_MODULE: "settings"
  SERVER_ROOT: "/opt/python/current/app/"

ただし、ステージングや製品などの複数の環境が必要な場合は、現在、構成ファイルを交換する必要があります。さらに悪いことに、ステージングなどの共有環境のためにソース管理ツリーにこれをどのように保持する予定ですか? プッシュするたびに、これらの構成環境設定が必要になるようです。

また、AWS ではステージングされていない変更をデプロイできないこともわかりました。つまり、デプロイを処理するスクリプトを作成することもできません。ここで何が欠けていますか?

4

2 に答える 2

0

DJANGO_SETTINGS_MODULE試したことはありませんが、構成ファイルではなく、コンテナー自体のパラメーターを介して渡すことができるようです。Beanstalk コンソールの [環境の詳細] -> [構成の編集] -> [コンテナ] セクションから更新できます。アイデアとして:

  • 複数の環境「本番」、「ステージング」などを作成する
  • 関連するDJANGO_SETTINGS_MODULE値でそれぞれを構成します
  • から DJANGO_SETTINGS_MODULE 値を削除します.ebextensions
  • 事前に作成された環境にアプリケーションをデプロイする
于 2013-01-21T01:31:38.620 に答える
0

eb branch私は過去にこれについていくつか掘り下げましたが、異なる環境を構成するために使用してから、eb クライアント レベルでローカルにオプション設定内でオプションを異なる方法で構成することを好むようです(ブランチなどを初期化するとき)。

考えてみると、環境構成 (つまりDJANGO_SETTINGS_MODULE) はアプリケーション コードとは別に管理する必要があるため、ebextensions から除外して、新しい環境に移動するときにセットアップすると仮定します。既存のものに切り替える場合は、再生したい環境に対して値が適切に設定されていることを確認する必要があります。

于 2014-10-31T21:25:44.547 に答える