翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Python 開発環境をセットアップします
Python 開発環境を設定し、アプリケーションをAWS Elastic Beanstalkにデプロイする前にローカルでテストします。このトピックでは、開発環境の設定ステップと便利なツールのインストールページへのリンクを概説します。
このガイドの手順に従うには、run commands のためのコマンドラインターミナルまたはシェルが必要になります。コマンドは、該当する場合、プロンプト記号 ($) と現在のディレクトリの名前が前に付けられて、リストに示されます。
~/eb-project$ this is a command
this is output
Linux および macOS では、任意のシェルとパッケージ管理者を使用できます。Windows 10 では、Linux 用の Windows サブシステムをインストール
すべての言語に適用される一般的な設定ステップやツールについては、Elastic Beanstalk で使用する開発マシンの設定を参照してください。
前提条件
Elastic Beanstalk を使用してデプロイするすべての Python アプリケーションについて、以下の前提条件は共通しています。
-
アプリケーションが使用する Elastic Beanstalk Python プラットフォームのバージョンと一致する Python バージョン。
-
ご使用の Python のバージョンに応じた
pip
ユーティリティ。これは、アプリケーション環境のセットアップ方法を Elastic Beanstalk が判断できるように、プロジェクトの依存関係をインストールし一覧表示するために使用されます。 -
AWS Elastic Beanstalk コマンドライン・インターフェイス (EB CLI) の使用 Elastic Beanstalk によるデプロイに必要なファイルを使用して、アプリケーションを初期化するのに使用されます。
-
正常に機能する
ssh
インストール。これは、デプロイの調査またはデバッグが必要なときに、実行中のインスタンスに connect するために使用されます。 -
virtualenv
パッケージ。これは、アプリケーションの開発とテストに使用する環境を作成するために使用されます。これにより、アプリケーションに必要ない余分なパッケージをインストールすることなく、その環境を Elastic Beanstalk がレプリケートできます。次のコマンドでこのパッケージをインストールします。$
pip install virtualenv
Python、pip、およびEB CLI のインストール手順については、EB CLI のインストールを参照してください。
仮想環境の使用
前提条件をインストールしたら、virtualenv
を使用して仮想環境をセットアップし、アプリケーションの依存関係をインストールします。仮想環境を使用することで、アプリケーションで必要なパッケージを正確に識別し、アプリケーションを実行する EC2 インスタンスにそれらの必要なパッケージをインストールすることができます。
仮想環境をセットアップするには
-
コマンドライン・ウィンドウを開き、次のように入力します。
$
virtualenv /tmp/
eb_python_app
eb_python_app
を、アプリケーションに対応するわかりやすい名前に置き換えます (アプリケーション名を使用することをお勧めします)。virtualenv
コマンドによって指定したディレクトリに仮想環境が作成され、アクションの結果が出力されます。Running virtualenv with interpreter /usr/bin/python New python executable in /tmp/eb_python_app/bin/python3.7 Also creating executable in /tmp/eb_python_app/bin/python Installing setuptools, pip...done.
-
仮想環境の準備が整ったら、環境の
activate
ディレクトリにあるbin
スクリプトを実行してスタートします。たとえば、前のステップで作成した eb_python_app 環境をスタートするには、次のように入力します。$
source /tmp/eb_python_app/bin/activate
コマンドプロンプトの冒頭には毎回、仮想環境の名前(例:
(eb_python_app)
)が出力され、仮想 Python 環境を使用していることがわかるようになっています。 -
仮想環境の使用を停止し、インストールされているすべてのライブラリを含むシステムのデフォルトの Python インタプリタに戻るには、
deactivate
コマンドを実行します。(eb_python_app) $
deactivate
注記
仮想環境の作成後は、activate
スクリプトを再び実行することで、いつでも再起動できます。
Elastic Beanstalk 用の Python プロジェクトの設定
Elastic Beanstalk CLI を使用して、Elastic Beanstalk でのデプロイ用に Python アプリケーションを準備します。
Elastic Beanstalk でのデプロイ用に Python アプリケーションを設定するには
-
仮想環境で、プロジェクトのディレクトリツリーの最上位 (
python_eb_app
) に戻り、次のように入力します。pip freeze >requirements.txt
このコマンドは、仮想環境にインストールされているパッケージの名前とバージョンを
requirements.txt
にコピーします。たとえば、PyYAML パッケージ、バージョン 3.11 が仮想環境にインストールされている場合、このファイルには次の行が含まれます。PyYAML==3.11
これにより、Elastic Beanstalk は、アプリケーションの開発とテストに使用されたのと同じパッケージとバージョンを使用して、アプリケーションの Python 環境をレプリケートすることができます。
-
eb init コマンドで EB CLI リポジトリを設定します。画面の指示に従ってリージョン、プラットフォーム、その他のオプションを選択します。詳細な手順については、「EB CLI を使用した Elastic Beanstalk 環境の管理」を参照してください。
デフォルトでは、Elastic Beanstalk は、アプリケーションを開始するために application.py
というファイルを探します。作成した Python プロジェクトにこのファイルが存在しない場合は、アプリケーション環境の調整が必要になります。また、アプリケーションのモジュールをロードできるように、環境変数を設定する必要があります。詳細については、「Elastic Beanstalk Python プラットフォームを使用する」を参照してください。