QuickStart:將 PHP 應用程式部署至 Elastic Beanstalk - AWS Elastic Beanstalk

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

QuickStart:將 PHP 應用程式部署至 Elastic Beanstalk

在以下教學課程中,您將了解如何使用 EB CLI 建立範例 PHP 應用程式並將其部署至 AWS Elastic Beanstalk 環境。

警告 - 不適用於生產用途!

範例僅用於示範。請勿在生產環境中使用範例應用程式。

AWS 您的帳戶

如果您還不是 AWS 客戶,則需要建立 AWS 帳戶才能使用 Elastic Beanstalk。

註冊 AWS 帳戶

如果您沒有 AWS 帳戶,請完成下列步驟來建立一個。

註冊 AWS 帳戶
  1. 開啟 https://portal.aws.amazon.com/billing/signup

  2. 請遵循線上指示進行。

    註冊程序的一部分包括接聽電話或文字訊息,並在電話鍵盤上輸入驗證碼。

    當您註冊 時 AWS 帳戶,AWS 帳戶根使用者會建立 。根使用者有權存取該帳戶中的所有 AWS 服務 和資源。作為安全最佳實務,請將管理存取權指派給使用者,並且僅使用根使用者來執行需要根使用者存取權的任務

AWS 會在註冊程序完成後傳送確認電子郵件給您。您可以隨時登錄 https://aws.amazon.com/ 並選擇我的帳戶,以檢視您目前的帳戶活動並管理帳戶。

建立具有管理存取權的使用者

註冊 後 AWS 帳戶,請保護 AWS 帳戶根使用者、啟用 AWS IAM Identity Center和建立管理使用者,以免將根使用者用於日常任務。

保護您的 AWS 帳戶根使用者
  1. 選擇根使用者並輸入 AWS 帳戶 您的電子郵件地址,以帳戶擁有者AWS Management Console身分登入 。在下一頁中,輸入您的密碼。

    如需使用根使用者登入的說明,請參閱 AWS 登入 使用者指南中的以根使用者身分登入

  2. 若要在您的根使用者帳戶上啟用多重要素驗證 (MFA)。

    如需說明,請參閱《IAM 使用者指南》中的為您的 AWS 帳戶 根使用者 (主控台) 啟用虛擬 MFA 裝置

建立具有管理存取權的使用者
  1. 啟用 IAM Identity Center。

    如需指示,請參閱《AWS IAM Identity Center 使用者指南》中的啟用 AWS IAM Identity Center

  2. 在 IAM Identity Center 中,將管理存取權授予使用者。

    如需使用 IAM Identity Center 目錄 做為身分來源的教學課程,請參閱AWS IAM Identity Center 《 使用者指南》中的使用預設值設定使用者存取 IAM Identity Center 目錄

以具有管理存取權的使用者身分登入
  • 若要使用您的 IAM Identity Center 使用者簽署,請使用建立 IAM Identity Center 使用者時傳送至您電子郵件地址的簽署 URL。

    如需使用 IAM Identity Center 使用者登入的說明,請參閱AWS 登入 《 使用者指南》中的登入 AWS 存取入口網站

指派存取權給其他使用者
  1. 在 IAM Identity Center 中,建立一個許可集來遵循套用最低權限的最佳實務。

    如需指示,請參閱《AWS IAM Identity Center 使用者指南》中的建立許可集

  2. 將使用者指派至群組,然後對該群組指派單一登入存取權。

    如需指示,請參閱《AWS IAM Identity Center 使用者指南》中的新增群組

先決條件

步驟 1:建立 PHP 應用程式

在此快速入門中,您將建立 Hello World PHP 應用程式。

建立專案目錄。

~$ mkdir eb-php ~$ cd eb-php

接著,在專案目錄中建立 index.php 檔案,並新增下列程式碼。

範例 index.php
<?php echo "Hello from a PHP application running in Elastic Beanstalk!"; ?>

步驟 2:在本機執行應用程式

使用下列命令在本機執行您的應用程式。

php -S localhost:5000

開啟瀏覽器至 http://localhost:5000

您應該會在瀏覽器中看到您的 hello 訊息,並在終端機中記錄訊息。

輸入 來停止本機伺服器Control+c,因此您可以部署 Elastic Beanstalk。

步驟 3:初始化和部署您的 PHP 應用程式

接著,您將使用 Elastic Beanstalk 主控台或 EB CLI 將應用程式部署至環境。在本教學課程中,您將使用 EB CLI 搭配互動式選項來初始化環境。

初始化您的環境並建立環境
  1. 執行下列 init 命令。

    eb init -i

    init 命令會以互動方式建立應用程式。應用程式名稱預設為本機資料夾,即 eb-php

    對於除 SSH 存取之外的所有提示,接受預設值,以使用最新的 PHP 平台版本建立環境。若要對執行個體進行疑難排解,您可以稍後重新執行eb init -i命令來設定 SSH 存取,或使用 Amazon EC2 Instance Connect 或 Session Manager 進行連線。

  2. 建立環境並部署您的應用程式

    執行下列命令來建立名為 的環境blue-env

    eb create blue-env

    當您第一次執行 eb create命令時,Elastic Beanstalk 會自動建置應用程式的 zip 檔案,稱為原始碼套件。接著,Elastic Beanstalk 會建立具有一或多個 Amazon EC2 執行個體的環境,然後將應用程式部署到環境中。

    將您的應用程式部署到 Elastic Beanstalk 最多可能需要五分鐘。

步驟 4:瀏覽您的雲端應用程式

當建立環境的程序完成時,您的應用程式應該正在執行並接聽連接埠 5000 上的請求。使用下列命令連線至您的應用程式:

eb open

eb open 命令會開啟為應用程式建立的自訂子網域的瀏覽器標籤。

步驟 5:更新並重新部署您的應用程式

建立應用程式並部署到環境之後,您可以隨時部署新版本的應用程式或不同的應用程式。部署新的應用程式版本更快,因為它不需要佈建或重新啟動 Amazon EC2 執行個體。

更新您的 PHP 程式碼,以包含來自伺服器環境的 REQUEST_TIME 值:

<?php echo "Hello from a PHP application running in Elastic Beanstalk!"; $timestamp = $_SERVER['REQUEST_TIME']; echo '<br/>Request time: ' . date('Y/m/d H:i:s', $timestamp); ?>

使用以下命令將您的 PHP 程式碼重新部署到 Elastic Beanstalk:

eb deploy

執行 eb deploy 時,EB CLI 會封裝您專案目錄的內容,並將其部署至您的環境。

部署完成後,請重新整理頁面或使用 重新連線至您的應用程式eb open。您應該會看到您的更新。如果沒有,請再次執行本機伺服器以驗證您的變更進行故障診斷。

恭喜您!

您已使用 Elastic Beanstalk 建立、部署和更新 PHP 應用程式!

清除

完成使用示範程式碼後,您可以終止您的環境。Elastic Beanstalk 會刪除所有相關 AWS 資源,例如 Amazon EC2 執行個體資料庫執行個體負載平衡器、安全群組和警示

移除資源不會刪除 Elastic Beanstalk 應用程式,因此您可以隨時為應用程式建立新環境。

從主控台終止 Elastic Beanstalk 環境
  1. 開啟 Elastic Beanstalk 主控台,然後在區域清單中選取您的 AWS 區域。

  2. 在導覽窗格中,選擇環境,然後在清單中選擇您環境的名稱。

  3. 選擇 Actions (動作),然後選擇 Terminate Environment (終止環境)。

  4. 使用畫面顯示對話方塊來確認環境終止。

或者,您可以使用下列命令,透過 EB CLI 終止您的環境:

eb terminate

後續步驟

您可以使用 Elastic Beanstalk 主控台探索應用程式環境。如需詳細資訊,請參閱探索您的環境

如需使用 PHP 的進階範例,請參閱 Elastic Beanstalk 中 PHP 的進階範例