

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

# 步驟 2.4：建立和部署應用程式 - Chef 11
<a name="gettingstarted-simple-app"></a>

**重要**  
 AWS OpsWorks Stacks 此服務已於 2024 年 5 月 26 日終止，並已針對新客戶和現有客戶停用。我們強烈建議客戶盡快將其工作負載遷移至其他解決方案。如果您對遷移有任何疑問，請透過 [AWS re：Post](https://repost.aws/) 或透過 [AWS Premium Support](https://aws.amazon.com/support) 聯絡 AWS 支援 團隊。

若要讓 MyStack 更有用，您需要將應用程式部署到 PHP App Server 執行個體。您將應用程式的程式碼和任何相關檔案存放在儲存庫中 (例如 Git)。您需要幾個步驟，才能使那些檔案進入到您的應用程式伺服器內。

**注意**  
本節中的程序適用於 Chef 11 堆疊。如需如何在 Chef 12 堆疊中將應用程式新增至 layer 的資訊，請參閱[新增應用程式](workingapps-creating.md)。

1. 建立應用程式。

   應用程式包含 OpsWorks Stacks 從儲存庫下載程式碼和相關檔案所需的資訊。您也可以指定額外的資訊，例如應用程式的網域。

1. 將應用程式部署到您的應用程式伺服器。

   當您部署應用程式時， OpsWorks Stacks 會觸發部署生命週期事件。代理程式接著會執行執行個體的部署配方，將檔案下載到適當的目錄並執行相關任務，例如設定伺服器、重新啟動服務等。

**注意**  
當您建立新的執行個體時， OpsWorks Stacks 會自動將任何現有的應用程式部署到執行個體。但是，當您建立新的應用程式或更新現有的應用程式時，您必須手動部署應用程式或更新所有現有的執行個體。

此步驟顯示如何手動從公有 Git 儲存庫將範例應用程式部署到應用程式伺服器。若您想要檢查應用程式，請前往 [https://github.com/amazonwebservices/opsworks-demo-php-simple-app](https://github.com/amazonwebservices/opsworks-demo-php-simple-app)。此範例中使用的應用程式位於版本 1 分支中。 OpsWorks Stacks 也支援數種其他儲存庫類型。如需詳細資訊，請參閱[應用程式來源](workingapps-creating.md#workingapps-creating-source)。

**建立和部署應用程式**

1. 

**開啟應用程式頁面**

   在導覽窗格中，按一下 **Apps (應用程式)**，然後在 **Apps (應用程式)** 頁面上，按一下 **Add an app (新增應用程式)**。  
![\[Apps page showing no apps and an "Add an app" button with a brief description.\]](http://docs.aws.amazon.com/zh_tw/opsworks/latest/userguide/images/gs13.png)

1. 

**設定應用程式。**

   在 **App (應用程式)** 頁面上，指定下列值：  
**名稱**  
應用程式的名稱， Stacks OpsWorks 用於顯示目的。範例應用程式名為 **SimplePHPApp**。 OpsWorks Stacks 也會為此範例產生簡短名稱 -simplephpapp，供內部和部署配方使用，如下所述。  
**Type**  
應用程式的類型，判斷部署應用程式的位置。此範例使用 **PHP**，會將應用程式部署到 PHP App Server 執行個體。  
**Data source type (資料來源類型)**  
關聯的資料庫伺服器。現階段請先選取 **None (無)**。我們將於[步驟 3：新增後端資料存放區](gettingstarted-db.md)介紹資料庫伺服器。  
**儲存庫類型**  
應用程式的儲存庫類型。範例應用程式存放於 **Git** 儲存庫。  
**Repository URL (儲存器 URL)**  
應用程式的儲存庫 URL。範例 URL 為 **git://github.com/awslabs/opsworks-demo-php-simple-app.git**  
**Branch/Revision (分支/修訂)**  
應用程式的分支或版本。本演練的此部分使用 **version1** 分支。

   保留剩餘設定的預設值，然後按一下 **Add App (新增應用程式)**。如需詳細資訊，請參閱[新增應用程式](workingapps-creating.md)。  
![\[Add App form with settings for name, type, document root, data sources, and application source.\]](http://docs.aws.amazon.com/zh_tw/opsworks/latest/userguide/images/gs14.png)

1. 

**開啟部署頁面**

   若要在伺服器上安裝程式碼，您必須「部署」**應用程式。若要執行此作業，請按一下 SimplePHPApp 中 **Actions (動作)** 資料行中的 **deploy (部署)**。  
![\[Apps table showing SimplePHPApp with deploy, edit, and delete options in the Actions column.\]](http://docs.aws.amazon.com/zh_tw/opsworks/latest/userguide/images/gs15.png)

1. 

**部署應用程式**

   當您部署應用程式時，代理程式會在 PHP App Server 執行個體上執行部署配方，以下載和設定應用程式。

   **Command (命令)** 應該已設為 **deploy (部署)**。保持其他設定的預設值，然後按一下 **Deploy (部署)** 部署應用程式。  
![\[Deploy app interface with settings for SimplePHPApp and instance selection options.\]](http://docs.aws.amazon.com/zh_tw/opsworks/latest/userguide/images/gs16.png)

   部署完成後，**Deployment (部署)** 頁面便會顯示 **Status (狀態)** 為 **Successful (成功)**，並且 **php-app1** 一旁會有綠色的核取記號。

1. 

**執行 SimplePHPApp**

   SimplePHPApp 現在已安裝並準備好可供使用。若要執行它，請按一下導覽窗格中的 **Instances (執行個體)** 以前往 **Instances (執行個體)** 頁面。然後按一下 php-app1 執行個體的公有 IP 地址。  
![\[PHP App Server instance details showing hostname, status, size, and public IP address.\]](http://docs.aws.amazon.com/zh_tw/opsworks/latest/userguide/images/gs20.png)

   您應該會在您的瀏覽器中看到如下的頁面。  
![\[Confirmation page for a simple PHP application running on AWS 雲端 with PHP version 5.3.20.\]](http://docs.aws.amazon.com/zh_tw/opsworks/latest/userguide/images/gs21.png)

**注意**  
本演練假設您會繼續前進到下一節，並最終會於一個工作階段中完成整個演練。如果您願意，您可以隨時停止，稍後再登入 Stacks OpsWorks 並開啟堆疊以繼續。但是，您必須為任何您使用的 AWS 資源支付費用 (例如線上執行個體)。為避免不必要的費用，您可以停止您的執行個體，如此便會停止對應的 EC2 執行個體。當您準備好繼續時，您可以再次啟動執行個體。