本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
設置 Elastic Beanstalk 的 Python 開發環境
本主題提供設定 Python 開發環境,以便在將應用程式部署到本機測試應用程式的指示 AWS Elastic Beanstalk。 它還引用了提供有用工具安裝說明的網站。
如需了解適用所有語言的常見設定步驟和工具,請參閱設定您的開發機器搭配 Elastic Beanstalk 使用。
為了遵循本指南的程序,您需要命令列終端機或 shell 來執行命令。命令清單前會出現提示字元 ($) 及目前的目錄名稱 (如有)。
~/eb-project$ this is a command
this is output
在 Linux 和 macOS 上,您可以使用偏好的 Shell 和套件軟體管理工具。在視窗上,你可以安裝視窗子系統為 Linux
如需了解適用所有語言的常見設定步驟和工具,請參閱設定您的開發機器搭配 Elastic Beanstalk 使用。
必要條件
下列清單提供使用 Elastic Beanstalk 和 Python 應用程式的常見先決條件:
-
Python 語言 — 安裝您選擇的 Elastic Beanstalk Python 平台版本中包含的 Python 語言版本的版本。如需我們支援的 Python 語言版本清單,請參閱 AWS Elastic Beanstalk 平台指南。如果您尚未在開發計算機上設置 Python,請參閱 Python 網站上的 Python 下載
頁面。 -
pip
實用程序-該pip
實用程序是 Python 的軟件包安裝程序。它會為您的項目安裝並列出依賴項,以便 Elastic Beanstalk 知道如何設置應用程序的環境。有關更多信息pip
,請參閱 pip.py pa.io 網站上的 pip 頁面。 -
(選擇性) Elastic Beanstalk 命令列介面 (EBCLI) — EB CLI 可以使用必要的部署檔來封裝您的應用程式。它還可以創建一個 Elastic Beanstalk 環境並將您的應用程序部署到它。您也可以透過 Elastic Beanstalk 主控台進行部署,因此 EB 並非CLI絕對必要。
-
正常
SSH
安裝 — 您可以使用SSH通訊協定連線至執行中的執行個體,以檢查或偵錯部署。 -
virtualenv
package — 此virtualenv
工具會為您的應用程式建立開發與測試環境。Elastic Beanstalk 可以複製此環境,而無需安裝應用程序不需要的額外軟件包。如需詳細資訊,請參閱虛擬環境網站。安裝 Python 後,您可以使用以下命令安 virtualenv
裝軟件包:$
pip install virtualenv
使用虛擬環境
先決條件安裝完成後,請透過 virtualenv
設定虛擬環境,以安裝應用程式的依存項目。透過使用虛擬環境,您可以準確辨別應用程式所需的套件,以便在執行應用程式的EC2執行個體上安裝所需的套件。
欲設定虛擬環境
-
開啟命令列視窗並輸入:
$
virtualenv /tmp/
eb_python_app
Replace (取代)
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 準備您的 Python 應用程序,CLI以便使用 Elastic Beanstalk 進行部署。
透過 Elastic Beanstalk 設定 Python 應用程式以進行部署
-
在您的虛擬環境中,回到您專案樹狀目錄 (
python_eb_app
) 的最上層,並輸入:pip freeze >requirements.txt
此命令將虛擬環境中安裝的軟件包的名稱和版本複製到
requirements.txt
,例如,如果 Py 軟件YAML包,版本 3.11 安裝在虛擬環境中,則該文件將包含以下行:PyYAML==3.11
這可讓 Elastic Beanstalk 使用與您用於開發並測試應用程式的相同套件和版本,複寫您應用程式的 Python 環境。
-
使用eb init指令設定 EB CLI 儲存庫。依提示選擇區域、平台和其他選項。如需詳細說明,請參閱 使用 EB CLI 管理 Elastic Beanstalk 環境。
根據預設,Elastic Beanstalk 會尋找名為 application.py
的檔案,以啟動您的應用程式。若您建立的 Python 專案並沒有該項目,則您應用程式的環境必須進行調整。您也將需要設定環境變數,藉此載入您應用程式的模組。如需詳細資訊,請參閱「使用 Elastic Beanstalk Python 平台」。