

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

# 複製 Elastic Beanstalk 環境
<a name="using-features.managing.clone"></a>

您可以透過複製現有環境，使用現有 Elastic Beanstalk 環境做為新環境的基礎。例如，您可能會想要建立複製，以便使用原始環境平台所用的較新版本平台分支。Elastic Beanstalk 會使用原始環境所使用的環境設定來設定複製。透過複製現有環境，而不是建立新環境，您不需要手動設定選項設定、環境變數，以及使用 Elastic Beanstalk 服務進行的其他設定。Elastic Beanstalk 也會建立與原始環境關聯之任何 AWS 資源的副本。

請務必注意下列情況：
+ 在複製過程中，Elastic Beanstalk 不會將資料從 Amazon RDS 複製到複製。
+ Elastic Beanstalk 不會將未受管的資源變更納入複製環境。您使用 Elastic Beanstalk 主控台、命令列工具或 API 以外的工具變更 AWS 資源，均視為未受管的變更。
+ 輸入的安全群組會被視為未受管的變更。複製的 Elastic Beanstalk 環境不會轉移用於傳入的安全群組，讓環境開放給所有網際網路流量。您需要為複製的環境重新建立輸入安全群組。

您只能將環境複製到同一個平台分支的不同平台版本。不同的平台分支不保證相容。若要使用不同的平台分支，您必須手動建立新環境、部署應用程式程式碼，以及在程式碼和選項中進行任何必要的變更，以確保應用程式能夠在新平台分支上正確運作。

## AWS 管理主控台
<a name="using-features.managing.clone.CON"></a>

**重要**  
複製的 Elastic Beanstalk 環境不會轉移用於傳入的安全群組，讓環境開放給所有網際網路流量。您需要為複製的環境重新建立輸入安全群組。  
您可以檢查環境組態的偏離狀態，查看可能未複製的資源。如需詳細資訊，請參閱*AWS CloudFormation 《 使用者指南*》中的[在整個 CloudFormation 堆疊上偵測偏離](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/detect-drift-stack.html)。

**欲複製環境**

1. 開啟 [Elastic Beanstalk 主控台](https://console.aws.amazon.com/elasticbeanstalk)，然後在**區域**清單中選取您的 AWS 區域。

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

1. 在「環境概觀」頁面上，選擇**動作**。

1. 選擇**複製環境**。

1. 在 **Clone environment (複製環境)** 頁面，檢閱 **Original Environment (原始環境)** 區段的資訊，確認您已選擇欲建立複製的環境。

1. 在 **New Environment** (新環境) 區段，您可自由選擇是否變更 Elastic Beanstalk 根據原始環境自動設定的 **Environment name** (環境名稱)、**Environment URL** (環境 URL)、**Description** (描述)、**Platform version** (平台版本) 和 **Service role** (服務角色) 等值。
**注意**  
如果原始環境中使用的平台版本不是建議用於平台分支的版本，系統會警告您建議使用不同的平台版本。選擇 **Platform version (平台版本)**，您就可以在清單上看到建議的平台版本，例如 **3.3.2 (Recommended) (3.3.2 (建議使用))**。

1. 當您就緒後，選擇 **Clone (複製)**。

## Elastic Beanstalk 命令列界面 (EB CLI)
<a name="using-features.managing.clone.CLI"></a>

**重要**  
複製的 Elastic Beanstalk 環境不會轉移用於傳入的安全群組，讓環境開放給所有網際網路流量。您需要為複製的環境重新建立輸入安全群組。  
您可以檢查環境組態的偏離狀態，查看可能未複製的資源。如需詳細資訊，請參閱*AWS CloudFormation 《 使用者指南*》中的[在整個 CloudFormation 堆疊上偵測偏離](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/detect-drift-stack.html)。

使用 **eb clone** 命令來複製執行環境，如下所示。

```
~/workspace/my-app$ eb clone {{my-env1}}
Enter name for Environment Clone
(default is my-env1-clone): {{my-env2}}
Enter DNS CNAME prefix
(default is my-env1-clone): {{my-env2}}
```

您可於複製命令指定來源環境的名稱，或不指定以複製目前專案資料夾的預設環境。EB CLI 會提示您輸入新環境的名稱和 DNS 前綴字。

根據預設，**eb clone** 建立的新環境會使用來源環境平台的最新可用版本。即使有更新可用版本仍欲強制 EB CLI 使用相同版本，請使用 `--exact` 選項。

```
~/workspace/my-app$ eb clone --exact
```

如需此命令的詳細資訊，請參閱 [eb clone](eb3-clone.md)。