翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Elastic Beanstalk 用の Python 開発環境の設定
このトピックでは、Python 開発環境を設定し、アプリケーションを AWS Elastic Beanstalkにデプロイする前にローカルでテストする手順について説明します。また、便利なツールのインストール手順を提供するウェブサイトも参照します。
このガイドの手順に従うには、run commands のためのコマンドラインターミナルまたはシェルが必要になります。コマンドは、該当する場合、プロンプト記号 ($) と現在のディレクトリの名前が前に付けられて、リストに示されます。
~/eb-project$ this is a command
this is outputLinux および macOS では、任意のシェルとパッケージ管理者を使用できます。Windows では、Linux 用の Windows サブシステムをインストール
前提条件
次のリストは、Elastic Beanstalk と Python アプリケーションを使用するための一般的な前提条件を示しています。
-
Python 言語 – 選択した Elastic Beanstalk Python プラットフォームバージョンに含まれている Python 言語のバージョンをインストールします。サポートされている Python 言語バージョンのリストについては、「AWS Elastic Beanstalk プラットフォームガイド」の「サポートされている Python プラットフォーム」を参照してください。開発マシンに Python がまだ設定されていない場合は、Python ウェブサイトの「Python ダウンロード
」ページを参照してください。 -
pipユーティリティ –pipユーティリティは Python のパッケージインストーラです。アプリケーション環境の設定方法を Elastic Beanstalk が判断できるように、プロジェクトの依存関係をインストールし一覧表示します。pipの詳細については、pip.pypa.io ウェブサイトの pip ページを参照してください。 -
(オプション) Elastic Beanstalk コマンドラインインターフェイス (EB CLI) – EB CLI は、必要なデプロイファイルを使用してアプリケーションをパッケージ化できます。また、Elastic Beanstalk 環境を作成して、そこにアプリケーションをデプロイすることもできます。Elastic Beanstalk コンソールからもデプロイできます。そのため、EB CLI が必ず必要というわけではありません。
-
作業用
SSHのインストール – SSH プロトコルを使用して実行中のインスタンスに接続し、デプロイを検査またはデバッグできます。 -
virtualenvパッケージ – このvirtualenvツールは、アプリケーションの開発およびテスト環境を作成します。Elastic Beanstalk は、アプリケーションで不要な追加のパッケージをインストールすることなく、この環境をレプリケートできます。詳細については、virtualenvのウェブサイトを参照してください。Python をインストールしたら、次のコマンドを使用して virtualenvパッケージをインストールできます。$pip install virtualenv
仮想環境の使用
前提条件をインストールしたら、virtualenv を使用して仮想環境をセットアップし、アプリケーションの依存関係をインストールします。仮想環境を使用することで、アプリケーションで必要なパッケージを正確に識別し、アプリケーションを実行する EC2 インスタンスにそれらの必要なパッケージをインストールすることができます。
仮想環境をセットアップするには
-
コマンドライン・ウィンドウを開き、次のように入力します。
$virtualenv /tmp/eb_python_appeb_python_appを、アプリケーションに対応するわかりやすい名前に置き換えます (アプリケーション名を使用することをお勧めします)。virtualenvコマンドによって指定したディレクトリに仮想環境が作成され、アクションの結果が出力されます。Running virtualenv with interpreter /usr/bin/python New python executable in /tmp/eb_python_app/bin/python3.12 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 リポジトリを設定します。画面の指示に従ってリージョン、プラットフォーム、その他のオプションを選択します。
デフォルトでは、Elastic Beanstalk は、アプリケーションを開始するために application.py というファイルを探します。作成した Python プロジェクトにこのファイルが存在しない場合は、アプリケーション環境の調整が必要になります。また、アプリケーションのモジュールをロードできるように、環境変数を設定する必要があります。詳細については「Elastic Beanstalk Python プラットフォームを使用する」を参照してください。