6

カスタム AMI を作成せずに Django を実行するときに、Amazon Elastic Beanstalk に Python 2.7.3 を使用するように指示するにはどうすればよいですか?

Elastic Beanstalk に 2.6 より新しいバージョンの Python を使用するように指示するのは簡単なようです。問題を複雑にしすぎているように見えるので、カスタム AMI を作成したくありません。

Python 2.7.3 が必要で、virtualenv 1.8.X を使用する必要があります。amazon デプロイ チュートリアル (1.7.X) よりも新しいバージョンの virtualenv を使用すると、「git aws.push」に悪影響を与えるように見えることに気付きましたが、この場合、クライアントの要件によりオプションがありません。

.ebextensions/*.config で次のようなカスタム コンテナ コマンドを作成することを検討しました。

container_commands:
  update_python:
    command: "sudo yum -y install python27; sudo ln -sf `which python2.7` /usr/bin/python"

しかし、これは yum を壊します。これは問題ないかもしれませんが、システムをそのままにしておくことをお勧めします。

上記のように yum を使用して python27 をインストールし、python26 をデフォルトの python として保持することもできますが、サーバーが python27 を使用して Django を起動することを確認する方法がわかりません。したがって、代替の質問は、デフォルトの python の代わりに python27 を使用して Django を実行するように Elastic Beanstalk に指示するにはどうすればよいですか? システムに python27 を代替の python として簡単にインストールできます。明示的に呼び出すだけです。

この質問が広すぎないことを願っています。この問題を解決するために、複数の角度から考えようとしています。助けてくれてありがとう。

4

1 に答える 1

-3

これとまったく同じ問題に遭遇しましたが、解決策は非常に簡単でした。

PATH 環境変数がこのフォルダーを指していると仮定します。

<path to unzipped EB CLI package>/eb/linux/python2.7/

そこに行き、「eb」という名前のファイルを編集します

$cd <path to unzipped EB CLI package>/eb/linux/python2.7/
$vim eb

「 !#/usr/bin/env python」と書かれている最初の行で、 「 !#/usr/bin/env python2.7」に変更します。

そして、あなたは大丈夫なはずです!

于 2013-03-29T16:56:03.823 に答える