

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

# EB CLI 命令參考
<a name="eb3-cmd-commands"></a>

您可使用 Elastic Beanstalk 命令列界面 (EB CLI) 來執行各種操作，以部署並管理您的 Elastic Beanstalk 應用程式及環境。欲部署在 Git 來源控制下的應用程式原始碼，EB CLI 可與 Git 整合。如需詳細資訊，請參閱 [設定 EB 命令列界面 (EB CLI) 以管理 Elastic Beanstalk](eb-cli3.md) 及 [搭配 Git 使用 EB CLI](eb3-cli-git.md)。

**Topics**
+ [常用選項](eb3-cmd-options.md)
+ [**eb abort**](eb3-abort.md)
+ [**eb appversion**](eb3-appversion.md)
+ [**eb clone**](eb3-clone.md)
+ [**eb codesource**](eb3-codesource.md)
+ [**eb config**](eb3-config.md)
+ [**eb console**](eb3-console.md)
+ [**eb create**](eb3-create.md)
+ [**eb deploy**](eb3-deploy.md)
+ [**eb events**](eb3-events.md)
+ [**eb health**](eb3-health.md)
+ [**eb init**](eb3-init.md)
+ [**eb labs**](eb3-labs.md)
+ [**eb list**](eb3-list.md)
+ [**eb local**](eb3-local.md)
+ [**eb logs**](eb3-logs.md)
+ [**eb migrate**](eb3-migrate.md)
+ [**eb open**](eb3-open.md)
+ [**eb platform**](eb3-platform.md)
+ [**eb printenv**](eb3-printenv.md)
+ [**eb restore**](eb3-restore.md)
+ [**eb scale**](eb3-scale.md)
+ [**eb setenv**](eb3-setenv.md)
+ [**eb ssh**](eb3-ssh.md)
+ [**eb status**](eb3-status.md)
+ [**eb swap**](eb3-swap.md)
+ [**eb tags**](eb3-tags.md)
+ [**eb terminate**](eb3-terminate.md)
+ [**eb upgrade**](eb3-upgrade.md)
+ [**eb use**](eb3-use.md)

# 常用選項
<a name="eb3-cmd-options"></a>

下列選項可用於所有 EB CLI 命令。


****  

|  名稱  |  描述  | 
| --- | --- | 
|   `--debug`   |  列印除錯資訊。  | 
|   `-h`, `--help`   |  顯示協助訊息。 類型：字串 預設：無  | 
|   `--no-verify-ssl`   |  略過 SSL 憑證驗證。若您透過代理使用 CLI 出現問題，請使用此選項。  | 
|   `--profile`   |  使用 AWS 登入資料檔案中的特定設定檔。  | 
|   `--quiet`   |  抑制該命令的所有輸出。  | 
|   `--region`   |  使用指定的區域。  | 
|   `-v`, `--verbose`   |  顯示詳細資訊。  | 

# **eb abort**
<a name="eb3-abort"></a>

## Description
<a name="eb3-abortdescription"></a>

在環境資訊變更執行個體過程中，取消升級作業。

**注意**  
若您正在更新兩個以上的環境，將提示您選取欲還原變更的環境名稱。

## 語法
<a name="eb3-abortsyntax"></a>

 **eb abort** 

 **eb abort *environment-name*** 

## 選項
<a name="eb3-abortoptions"></a>


****  

|  名稱  |  描述  | 
| --- | --- | 
|  [常用選項](eb3-cmd-options.md)  |  | 

## Output
<a name="eb3-abortoutput"></a>

本命令會顯示目前正在更新的環境清單，並提示您選擇欲中止更新的環境。若目前只有一個環境正在更新，您不需要指定環境名稱。若成功，本命令會還原環境資訊變更。轉返程序會持續下去，直到環境中所有執行個體均具備之前的環境資訊，或直到轉返程序失敗。

## 範例
<a name="eb3-abortexample"></a>

下列範例取消平台升級。

```
$ eb abort
Aborting update to environment "tmp-dev".
<list of events>
```

# **eb appversion**
<a name="eb3-appversion"></a>

## Description
<a name="eb3-appversion-description"></a>

EB CLI `appversion` 命令可管理 Elastic Beanstalk [應用程式版本](concepts.md#concepts-version)。您可以在不部署的情況下建立新版本的應用程式、刪除應用程式版本或建立[應用程式版本生命週期原則](applications-lifecycle.md)。若您未使用任何選項叫用此命令，將進入[互動模式](#eb3-appversion-interactive)。

使用 `--create` 選項來建立新版本的應用程式。

使用 `--delete` 選項來刪除應用程式的版本。

使用 `lifecycle` 選項來顯示或建立應用程式版本生命週期政策。如需詳細資訊，請參閱[進行應用程式版本生命週期的設定](applications-lifecycle.md)。

## 語法
<a name="eb3-appversion-syntax"></a>

 **eb appversion** 

 **eb appversion [-c \$1 --create]** 

 **eb appversion [-d \$1 --delete] *version-label*** 

 **eb appversion lifecycle [-p \$1 --print]** 

## 選項
<a name="eb3-appversion-options"></a>


****  

|  名稱  |  描述 類型：字串  | 
| --- | --- | 
|  -a *application-name* 或 --application\$1name *application-name*  | 應用程式名稱。如果找不到具有指定名稱的應用程式，EB CLI 會為新應用程式建立應用程式版本。 僅適用與 `--create` 選項一起使用。 類型：字串  | 
|  -c 或 --create  | 建立[新版本](concepts.md#concepts-version)的應用程式。 | 
|  -d *version-label* 或 --delete *version-label*  | 刪除標記為 version-label 的應用程式版本。 | 
|  `-l` *version\$1label* 或 `--label` *version\$1label*  |  指定用於 EB CLI 建立的版本的標籤。如果您不使用此選項，EB CLI 會產生新的唯一標籤。如果您提供版本標籤，請確保它是唯一的。 僅適用與 `--create` 選項一起使用。 類型：字串  | 
|  lifecycle  | 叫用預設編輯器來建立新的應用程式版本生命週期政策。使用此政策可避免達到[應用程式版本配額](https://docs.aws.amazon.com/general/latest/gr/elasticbeanstalk.html#limits_elastic_beanstalk)。 | 
|  lifecycle -p 或 lifecycle --print  | 顯示目前的應用程式生命週期政策。 | 
|  `-m` "*version\$1description*" 或 `--message` "*version\$1description*"  |  應用程式版本的描述。它用雙引號括住。 僅適用與 `--create` 選項一起使用。 類型：字串  | 
|  `-p` 或 `--process`  |  預處理並驗證原始碼套件中的環境資訊清單和組態檔案。驗證組態檔案可能會識別問題。我們建議您在將應用程式版本部署至環境之前執行此操作。 僅適用與 `--create` 選項一起使用。  | 
|  `--source codecommit/repository-name/branch-name`  |  CodeCommit 儲存庫和分支。 僅適用與 `--create` 選項一起使用。  | 
|  `--staged`  |  使用 git 索引中暫存的文件 (而不是 HEAD 認可) 來建立應用程式版本。 僅適用與 `--create` 選項一起使用。  | 
|  `--timeout` *分鐘*  |  命令逾時前的分鐘數。 僅適用與 `--create` 選項一起使用。  | 
|  [常用選項](eb3-cmd-options.md)  |  | 

## 以互動方式使用命令
<a name="eb3-appversion-interactive"></a>

如果您使用不帶有任何引數的命令，輸出將顯示應用程式版本。它們以相反的時間順序列出，最新版本最先列出。有關畫面外觀的範例，請參閱 **Examples (範例)** 區段。請注意，狀態行顯示在底端。狀態行會顯示上下文相關資訊。

按 `d` 來刪除應用程式版本，按 `l` 來管理您的應用程式生命週期政策，或按 `q` 來退出且不進行任何變更。

**注意**  
若該版本已部署至任一環境，將無法刪除該版本。

## Output
<a name="eb3-appversion-output"></a>

帶有 `--create` 選項的命令，會顯示應用程式版本已建立的確認訊息。

帶有 `--delete` *version-label* 選項的命令，會顯示應用程式版本已刪除的確認訊息。

## 範例
<a name="eb3-appversion-example"></a>

下列範例顯示無任何部署的應用程式之互動視窗。

![\[Application window showing version history with three entries and no current deployment.\]](http://docs.aws.amazon.com/zh_tw/elasticbeanstalk/latest/dg/images/InteractiveModeNoEnvironment.png)


下列範例為已部署第四版且版本標籤為 **Sample Application (範例應用程式)** 的應用程式互動視窗。

![\[Application versions table showing 4 versions, with the latest labeled "Sample Application" deployed 2 minutes ago.\]](http://docs.aws.amazon.com/zh_tw/elasticbeanstalk/latest/dg/images/InteractiveModeWithEnvironment.png)


下列範例為 **eb appversion lifecycle -p** 命令的輸出，其中 *ACCOUNT-ID* 為使用者的帳戶 ID：

```
Application details for: lifecycle
  Region: sa-east-1
  Description: Application created from the EB CLI using "eb init"
  Date Created: 2016/12/20 02:48 UTC
  Date Updated: 2016/12/20 02:48 UTC
  Application Versions: ['Sample Application']
  Resource Lifecycle Config(s):
    VersionLifecycleConfig:
      MaxCountRule:
        DeleteSourceFromS3: False
        Enabled: False
        MaxCount: 200
      MaxAgeRule:
        DeleteSourceFromS3: False
        Enabled: False
        MaxAgeInDays: 180
    ServiceRole: arn:aws:iam::ACCOUNT-ID:role/aws-elasticbeanstalk-service-role
```

# **eb clone**
<a name="eb3-clone"></a>

## Description
<a name="eb3-clonedescription"></a>

將環境複製到新的環境，讓兩個環境擁有相同的環境設定。

**注意**  
在預設情況下，您用來建立複製環境的環境，無論其解決方案堆疊的版本為何，**eb clone** 指令都會使用最新的解決方案堆疊來複製環境。您可以在執行該指令時包含 `--exact`，來停用此設定。



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



## 語法
<a name="eb3-clonesyntax"></a>

 **eb clone** 

 **eb clone *environment-name*** 

## 選項
<a name="eb3-cloneoptions"></a>


****  

|  名稱  |  描述  | 
| --- | --- | 
|  `-n` *字串* 或 `--clone_name` *字串*  |  複製的環境所要使用的名稱。  | 
|  `-c` *字串* 或 `--cname` *字串*  |  複製的環境所要使用的 CNAME 字首。  | 
|  `--envvars`  |  以逗號分隔清單列出的環境屬性，格式為 *name*=*value*。 類型：字串 約束: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/elasticbeanstalk/latest/dg/eb3-clone.html)  | 
|  `--exact`  |  防止 Elastic Beanstalk 將新的複製環境的解決方案堆疊版本，更新為可用的最新版本 (適用於原始環境的平台)。  | 
|  `--scale` *數字*  |  當複製的環境啟動時，在環境中執行的執行個體的數量。  | 
|  `--tags` *名稱*=*值*  |  [標記](using-features.tagging.md)，用來標記您環境中的資源 (以英文逗號分隔的清單)，格式為 *name*=*value*。  | 
|  `--timeout`  |  命令逾時前的分鐘數。  | 
|  [常用選項](eb3-cmd-options.md)  |  | 

## Output
<a name="eb3-cloneoutput"></a>

如果成功的話，此指令會建立環境，此環境會具有和原始環境相同的設定，也可透過任何 **eb clone** 選項指定，以修改環境。

## 範例
<a name="eb3-cloneexample"></a>

下列的範例會複製指定的環境。

```
$ eb clone
Enter name for Environment Clone
(default is tmp-dev-clone):
Enter DNS CNAME prefix
(default is tmp-dev-clone):
Environment details for: tmp-dev-clone
  Application name: tmp
  Region: us-west-2
  Deployed Version: app-141029_144740
  Environment ID: e-vjvrqnn5pv
  Platform: 64bit Amazon Linux 2014.09 v1.0.9 running PHP 5.5
  Tier: WebServer-Standard-1.0
  CNAME: tmp-dev-clone.elasticbeanstalk.com
  Updated: 2014-10-29 22:00:23.008000+00:00
Printing Status:
2018-07-11 21:04:20    INFO: createEnvironment is starting.
2018-07-11 21:04:21    INFO: Using elasticbeanstalk-us-west-2-888888888888 as Amazon S3 storage bucket for environment data.
...
2018-07-11 21:07:10    INFO: Successfully launched environment: tmp-dev-clone
```

# **eb codesource**
<a name="eb3-codesource"></a>

## Description
<a name="eb3-codesourcedescription"></a>

將 EB CLI 設為自 CodeCommit 儲存庫進行部署，或者停用 CodeCommit 整合並從您的本機電腦上傳來源套件。



**注意**  
有些 AWS 區域不提供 CodeCommit。Elastic Beanstalk 和 CodeCommit 之間的整合在這些區域中不會發生作用。  
如需每個區域中 AWS 提供的服務資訊，請參閱[區域表](https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/)。

## 語法
<a name="eb3-codesourcesyntax"></a>

**eb codesource** 

**eb codesource codecommit**

**eb codesource local**

## 選項
<a name="eb3-codesourceoptions"></a>


****  

|  名稱  |  描述  | 
| --- | --- | 
|  [常用選項](eb3-cmd-options.md)  |  | 

## Output
<a name="eb3-codesourceoutput"></a>

**eb codesource** 提示您選擇 CodeCommit 整合或標準部署。

**eb codesource codecommit** 會啟動 CodeCommit 整合的互動式儲存庫組態。

**eb codesource local** 會顯示原始組態並停用 CodeCommit 整合。

## 範例
<a name="eb3-codesourceexample"></a>

為目前分支使用 **eb codesource codecommit** 來設定 CodeCommit 整合。

```
~/my-app$ eb codesource codecommit
Select a repository
1) my-repo
2) my-app
3) [ Create new Repository ]
(default is 1): 1

Select a branch
1) mainline
2) test
3) [ Create new Branch with local HEAD ]
(default is 1): 1
```

為目前分支使用 **eb codesource local** 來停用 CodeCommit 整合。

```
~/my-app$ eb codesource local
Current CodeCommit setup:
  Repository: my-app
  Branch: mainline
Default set to use local sources
```

# **eb config**
<a name="eb3-config"></a>

## Description
<a name="eb3-configdescription"></a>

管理您環境的作用中[組態](concepts.md#concepts-environmentconfig)設定和[已儲存組態](concepts.md#concepts-configuration)。您可以使用此命令來上傳、下載或列出您環境的已儲存組態。您也可以使用它來下載、顯示或更新其作用中的組態設定。



如果根目錄包含 `platform.yaml` 檔案，其中指定自訂的平台，則此命令也會變更建置器的組態設定。這是根據 `platform.yaml` 中設定的值完成的。

**注意**  
**eb config** 不會顯示環境屬性。若要設定可以從您的應用程式中讀取的環境屬性，請改用 [**eb setenv**](environment-configuration-methods-after.md#configuration-options-after-ebcli-ebsetenv)。

## 語法
<a name="eb3-configsyntax"></a>

以下是用於 **eb config** 命令與您環境的作用中[組態設定](concepts.md#concepts-environmentconfig)搭配使用的語法部分。如需特定範例，請參閱本主題後半內容中的 [範例](#eb3-configexample) 部分。
+  **eb config** – 在您設定為 EDITOR 環境變數的文字編輯器中顯示環境的作用中組態設定。當您儲存對檔案進行的變更並關閉編輯器時，會使用檔案中儲存的選項設定來更新環境。
**注意**  
如果您沒有設定 EDITOR 環境變數，EB CLI 會在 YAML 檔案的預設編輯器中顯示您的選項設定。
+  **eb config *environment-name*** – 顯示並更新已命名環境的組態。組態會顯示在您設定的文字編輯器或預設編輯器 YAML 檔案中。
+ **eb config save** – 將目前環境的作用中組態設定儲存至 `.elasticbeanstalk/saved_configs/` (使用 `[configuration-name].cfg.yml` 作為檔案名稱)。根據預設，EB CLI 會根據環境的名稱，使用*configuration-name*來儲存組態設定。在執行指令時，您可以加入 `--cfg` 選項搭配所要的組態名稱，來指定不同的組態名稱。

  您可以使用 `--tags` 選項來標記已儲存的組態。
+ **eb config `--display`** – 將環境的作用中組態設定寫入 *stdout*，而不是檔案。依預設，這將顯示終端機的組態設定。
+ **eb config `--update configuration_string | file_path`** – 使用在 *configuration\$1string* 中指定的資訊，或在 *file\$1path* 識別的檔案內部，更新目前環境的作用中組態設定。

**注意**  
`--display` 和 `--update` 選項提供了以程式設計方式讀取和修訂環境組態設定的靈活性。

下文說明使用 **eb config** 命令來使用[已儲存組態](concepts.md#concepts-configuration)的語法。如需範例，請參閱本主題後半內容中的 [範例](#eb3-configexample) 部分。
+ **eb config get *config-name*** – 從 Amazon S3 下載已命名儲存的組態。

  
+ **eb config delete *config-name* ** – 刪除 Amazon S3 中已命名儲存的組態。如果您已下載它，也會在本機刪除它。
+ **eb config list** - 列出在 Amazon S3 中的已儲存組態。
+ **eb config put *filename*** - 將已命名儲存的組態上傳到 Amazon S3 儲存貯體。*檔案名稱*必須有副檔名 `.cfg.yml`。若要指定不包含路徑的檔案名稱，您可以在執行指令之前，將檔案儲存到 `.elasticbeanstalk` 或 `.elasticbeanstalk/saved_configs/` 資料夾。或者，您可以提供完整的路徑來指定*檔案名稱*。

## 選項
<a name="eb3-configoptions"></a>


****  

|  名稱  |  描述  | 
| --- | --- | 
|  `--cfg config-name`  |  用於已儲存組態的名稱。 此選項僅適用 **eb config save**。  | 
|  `-d` 或 `--display`  |  顯示目前環境的組態設定 (寫入 *stdout*)。 與 `--format` 選項一起使用，以指定要在 JSON 或 YAML 中的輸出。如果您未指定，輸出採用 YAML 格式。 只有在您使用不含任何其他子命令的 **eb config** 命令時，此選項才起作用。  | 
|  `-f format_type` 或 `--format format_type`  |  指定顯示格式。有效值是 JSON 或 YAML。 預設為 YAML。 此選項僅與 `--display` 選項一起使用。  | 
|  `-﻿-﻿tags key1=value1[,key2=value2 ...]`  |  要新增到您的已儲存的組態的標籤。在清單中指定標籤時，將它們指定為 key=value 對，並以逗號分隔每個標籤。 如需更多詳細資訊，請參閱 [標記已儲存組態](environment-configuration-savedconfig-tagging.md)。 此選項僅適用 **eb config save**。  | 
|  `--timeout timeout`  |  命令逾時前的分鐘數。  | 
|  `-u configuration_string \| file_path` 或 `--update configuration_string \| file_path`  |  更新目前環境的作用中組態設定。 只有在您使用不含任何其他子命令的 **eb config** 命令時，此選項才起作用。 `configuration_string \| file_path` 參數屬於字串類型。字串提供命名空間清單和對應選項，以新增、更新或從環境的組態設定中移除。或者，輸入字串可以代表包含相同資訊的檔案。 若要指定檔案名稱，輸入字串必須遵循格式 `"file://<path><filename>"`。若要指定不包含 `path` 的檔案名稱，請將檔案儲存至您執行命令的資料夾。或者，透過提供完整的路徑來指定檔案名稱。 組態資訊必須符合下列條件。至少需要其中一個區段 **OptionSettings** 或 **OptionsToRemove**。使用 **OptionSettings** 來新增或變更選項。使用 **OptionsToRemove** 從命名空間中移除選項。如需特定範例，請參閱本主題後半內容中的 [範例](#eb3-configexample) 部分。 

**Example**  
*YAML 格式*  

```
OptionSettings:
  namespace1:
    option-name-1: option-value-1
    option-name-2: option-value-2
    ...
OptionsToRemove:
  namespace1:
    option-name-1
    option-name-2
    ...
``` 

**Example**  
*JSON 格式*  

```
{
   "OptionSettings": {
      "namespace1": {
         "option-name-1": "option-value-1",
         "option-name-2": "option-value-2",
         ...
      }
   },
   "OptionsToRemove": {
      "namespace1": {
         "option-name-1",
         "option-name-2",
         ...
      }
   }
}
```  | 
|  [常用選項](eb3-cmd-options.md)  |  | 

## Output
<a name="eb3-configoutput"></a>

如果在未新增子命令或選項的情況下成功執行 **eb config** 或 **eb config *environment-name*** 命令，命令會在您設定為 EDITOR 環境變數的文字編輯器中，顯示目前的選項設定。如果您沒有設定 EDITOR 環境變數，EB CLI 會在 YAML 檔案的預設編輯器中顯示您的選項設定。

當您儲存對檔案進行的變更並關閉編輯器時，會使用檔案中儲存的選項設定來更新環境。會顯示下列輸出以確認組態更新。

```
$ eb config myApp-dev
    Printing Status:
    2021-05-19 18:09:45    INFO    Environment update is starting.
    2021-05-19 18:09:55    INFO    Updating environment myApp-dev's configuration settings.
    2021-05-19 18:11:20    INFO    Successfully deployed new configuration to environment.
```

如果命令使用 `--display` 選項成功執行，會顯示目前環境的組態設定 (寫入 *stdout*)。

如果指令使用 `get` 參數並執行成功，此指令會顯示您所下載本機副本的位置。

如果指令使用 `save` 參數並執行成功，此指令會顯示已儲存檔案的位置。

## 範例
<a name="eb3-configexample"></a>

本節說明如何變更用來檢視與編輯選項設定檔案的文字編輯器。

如果使用 Linux 和 UNIX，下列範例會將編輯器變更為 vim：

```
$ export EDITOR=vim
```

如果使用 Linux 和 UNIX，下列範例會將編輯器變更為 `/usr/bin/kate` 所安裝的任何編輯器。

```
$ export EDITOR=/usr/bin/kate
```

如果使用 Windows，下列範例會將編輯器變更為 Notepad\$1\$1。

```
> set EDITOR="C:\Program Files\Notepad++\Notepad++.exe
```

本節提供的範例，適用於搭配子命令執行時的 **eb config** 命令。

下列範例刪除了名為 `app-tmp` 的已儲存組態。

```
$ eb config delete app-tmp
```

下列範例從您的 Amazon S3 儲存貯體下載了名為 app-tmp 的已儲存組態。

```
$ eb config get app-tmp
```

下列範例列出了您的 Amazon S3 儲存貯體中所儲存組態的名稱。

```
$ eb config list
```

下列範例將名為 app-tmp 的已儲存組態的本機副本，上傳到您的 Amazon S3 儲存貯體。

```
$ eb config put app-tmp
```

下列範例從目前執行的環境儲存了組態設定。如果您未提供用於已儲存組態的名稱，則 Elastic Beanstalk 會根據環境的名稱來將組態檔案命名。例如，名為 *tmp-dev* 的環境將稱為 `tmp-dev.cfg.yml`。Elastic Beanstalk 會將檔案儲存至 `/.elasticbeanstalk/saved_configs/` 資料夾。

```
$ eb config save
```

下列範例說明如何使用 `--cfg` 選項，來將 tmp-dev 環境的組態設定儲存到名為 `v1-app-tmp.cfg.yml` 的檔案。Elastic Beanstalk 會將檔案儲存至 `/.elasticbeanstalk/saved_configs/` 資料夾。如果您未指定環境名稱，則 Elastic Beanstalk 會從目前執行中的環境儲存組態設定。

```
$ eb config save tmp-dev --cfg v1-app-tmp
```

本節提供的範例，適用於在沒有子命令的情況下執行時的 **eb config** 命令。

下列命令會在文字編輯器中顯示目前環境的選項設定。

```
$ eb config
```

下列命令會在文字編輯器中顯示 *my-env* 環境的選項設定。

```
$ eb config my-env
```

下列範例會顯示目前環境的選項設定。它以 YAML 格式輸出，因為沒有使用 `--format` 選項指定特定的格式。

```
$ eb config --display
```

下列範例使用名為 `example.txt` 的檔案中的規格更新目前環境的選項設定。檔案採用 YAML 或 JSON 格式。EB CLI 會自動偵測檔案格式。
+  命名空間 `aws:autoscaling:asg` 的 Minsize 選項設定為 1。
+  命名空間 `aws:elasticbeanstalk:command` 的批次大小設定為 30%。
+  它會從命名空間 `AWSEBV2LoadBalancer.aws:elbv2:loadbalancer` 移除 *IdleTimeout: None* (IdleTimeout：無) 的選項設定。

```
$ eb config --update "file://example.txt"
```

**Example - filename：`example.txt` – YAML 格式**  

```
OptionSettings:
  'aws:elasticbeanstalk:command':
    BatchSize: '30'
    BatchSizeType: Percentage
  'aws:autoscaling:asg':
    MinSize: '1'
OptionsToRemove:
  'AWSEBV2LoadBalancer.aws:elbv2:loadbalancer':
    IdleTimeout
```

**Example - filename：`example.txt` – JSON 格式**  

```
{
    "OptionSettings": {
        "aws:elasticbeanstalk:command": {
            "BatchSize": "30",
            "BatchSizeType": "Percentage"
        },
        "aws:autoscaling:asg": {
            "MinSize": "1"
        }
    },
    "OptionsToRemove": {
        "AWSEBV2LoadBalancer.aws:elbv2:loadbalancer": {
            "IdleTimeout"
        }
    }
}
```

下列範例會更新目前環境的選項設定。此命令會將 `aws:autoscaling:asg` 命名空間的 Minsize 選項設定為 1。

**注意**  
這些範例特定於 Windows PowerShell。它們透過在雙引號 (`"`) 字元前面加一個斜線 (`\`) 字元來逸出其文字出現。不同的作業系統和命令列環境可能具有不同的逸出序列。因此，我們建議您使用先前範例所示的檔案選項。在檔案中指定組態選項不需要逸出字元，而且在不同的作業系統中是一致的。

下列範例採用 JSON 格式。EB CLI 會偵測格式採用 JSON 還是 YAML。

```
PS C:\Users\myUser\EB_apps\myApp-env>eb config --update '{\"OptionSettings\":{\"aws:autoscaling:asg\":{\"MaxSize\":\"1\"}}}'
```

下列範例採用 YAML 格式。若要以正確格式輸入 YAML 字串，該命令包括 YAML 檔案中所需的間距和行尾返回。
+ 使用 "enter" 或 "return" 鍵結束每一行。
+ 以兩個空格開始第二行，以四個空格開始第三行。

```
PS C:\Users\myUser\EB_apps\myApp-env>eb config --update 'OptionSettings:
>>  aws:autoscaling:asg:
>>    MinSize: \"1\"'
```

# **eb console**
<a name="eb3-console"></a>

## Description
<a name="eb3-consoledescription"></a>

開啟瀏覽器以在 Elastic Beanstalk 管理主控台中顯示環境組態儀表板。

若根目錄內含指定自訂平台的 `platform.yaml` 檔案，此命令同時會在 Elastic Beanstalk 管理主控台中顯示 `platform.yaml` 指定的建置器環境組態。

## 語法
<a name="eb3-consolesyntax"></a>

 **eb console** 

 **eb console *environment-name*** 

## 選項
<a name="eb3-consoleoptions"></a>


****  

|  名稱  |  描述  | 
| --- | --- | 
|  [常用選項](eb3-cmd-options.md)  |  | 

# **eb create**
<a name="eb3-create"></a>

## Description
<a name="eb3-createdescription"></a>

建立新的環境，然後在其中部署應用程式版本。

**注意**  
若要在 .NET 應用程式上使用 **eb create**，您必須依照 [建立 .NET 應用程式的原始碼套件](applications-sourcebundle.md#using-features.deployment.source.dotnet) 所述建立部署套件，接著設定 CLI 組態，將套件部署為成品，如 [部署成品而非專案資料夾](eb-cli3-configuration.md#eb-cli3-artifact) 所述。
要以 EB CLI 建立環境，就必須有[服務角色](concepts-roles-service.md)。您可以在 Elastic Beanstalk 主控台建立環境，以建立服務角色。如果您沒有服務角色，EB CLI 會嘗試在您執行 `eb create` 時為您建立。

您可自數個來源來部署應用程式版本：
+ 預設情況：自本機專案目錄下的應用程式原始碼。
+ 使用 `--version` 選項：自應用程式內已存在的應用程式版本。
+ 您的專案目錄沒有應用程式程式碼，或使用 `--sample` 選項時：自您的環境平台專屬的範例應用程式部署。

## 語法
<a name="eb3-createsyntax"></a>

**eb create**

**eb create *environment-name***

環境名稱長度必須介於 4 到 40 個字元。僅可包含字母、數字與連字號 (-)。環境名稱的開頭和結尾不可為連字號。

若您的命令納入環境名稱，EB CLI 不會提示您進行選擇或建立服務角色。

若您執行不帶環境名稱引數的命令，將會以互動式流程執行，並提示您輸入或選取部分設定的值。在此互動式流程中，若您正部署範例應用程式，EB CLI 亦會問您是否要將該範例應用程式下載至本機專案目錄中。下載後，您稍後即可搭配新環境使用 EB CLI，執行需要應用程式程式碼的操作 (如 [**eb deploy**](eb3-deploy.md))。

某些互動式流程提示只會在特定情況下顯示。例如，如果您選擇使用 Application Load Balancer (而您的帳戶至少有一個可共享的 Application Load Balancer，則 Elastic Beanstalk 會顯示提示，詢問您是否要使用共享負載平衡器。如果您的帳戶中沒有可共享的 Application Load Balancer，則不會顯示此提示。

## 選項
<a name="eb3-createoptions"></a>

這些選項均非必要。若您不帶選項執行 **eb create**，EB CLI 將提示您輸入或選取每個設定的值。


****  

|  名稱  |  描述  | 
| --- | --- | 
|  `-d` 或 `--branch_default`  |  將環境設定為目前儲存庫的預設環境。  | 
|  `--cfg` *config-name*  |  [使用已儲存組態的平台設定](environment-configuration-methods-during.md#configuration-options-during-ebcli-savedconfig)，位置位於 `.elasticbeanstalk/saved_configs/` 或您的 Amazon S3 儲存貯體。僅指定該檔案的名稱，不要納入 `.cfg.yml` 副檔名。  | 
|  `-c` *subdomain-name* 或 `--cname` *subdomain-name*  |  CNAME DNS 項目前綴的子網域名稱，可路由至您的網站。 類型：字串 預設：環境名稱  | 
|  `-db` 或 `--database`  |  將資料庫連接至環境。若您將 **eb create** 搭配 `--database` 選項執行，但沒有 `--database.username` 和 `--database.password` 選項，則 EB CLI 會提示您輸入資料庫的主要使用者名稱及密碼。  | 
|  `-db.engine` *引擎* 或 `--database.engine` *引擎*  |  資料庫引擎類型。若您搭配此選項執行 **eb create**，EB CLI 會啟動連接至資料庫的環境。即使您沒有透過 `--database` 選項執行此命令也是。 類型：字串 有效值：`mysql`、`oracle-se1`、`postgres`、`sqlserver-ex`、`sqlserver-web`、`sqlserver-se`  | 
|  `-db.i` *instance\$1type* 或 `--database.instance` *instance\$1type*  |  要用於資料庫的 Amazon EC2 執行個體類型。若您搭配此選項執行 **eb create**，EB CLI 會啟動連接至資料庫的環境。即使您沒有透過 `--database` 選項執行此命令也是。 類型：字串 有效值： Amazon RDS 支援一組標準的資料庫執行個體。若要為資料庫引擎選取適當的資料庫執行個體，您必須將幾項特定條件一併納入考量。如需詳細資訊，請參閱 *Amazon RDS 使用者指南*中的[資料庫執行個體類別](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Concepts.DBInstanceClass.html)。  | 
|  `-db.pass` *密碼* 或 `--database.password` *密碼*  |  資料庫的密碼。若您搭配此選項執行 **eb create**，EB CLI 會啟動連接至資料庫的環境。即使您沒有透過 `--database` 選項執行此命令也是。  | 
|  `-db.size` *number\$1of\$1gigabytes* 或 `--database.size` *number\$1of\$1gigabytes*  |  為資料庫儲存配置的 GB 數。若您搭配此選項執行 **eb create**，EB CLI 會啟動連接至資料庫的環境。即使您沒有透過 `--database` 選項執行此命令也是。 類型：數字 有效值： [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/elasticbeanstalk/latest/dg/eb3-create.html)  | 
|  `-db.user` *使用者名稱* 或 `--database.username` *使用者名稱*  |  資料庫的使用者名稱。若您搭配此選項執行 **eb create**，EB CLI 會啟動連接至資料庫的環境，即使此命令未納入 `--database` 選項。若您執行的 **eb create** 具備 `--database` 選項，但沒有 `--database.username` 和 `--database.password` 選項，則 EB CLI 會提示您輸入主要資料庫的使用者名稱及密碼。  | 
|  `-db.version` *版本* 或 `--database.version` *version*  |  用於指定資料庫引擎版本。若此旗標已存在，環境將搭配指定版本編號的資料庫啟動，即使 `--database` 旗標不存在。  | 
|  `--elb-type` *類型*  |  [負載平衡器類型](using-features.managing.elb.md)。 類型：字串 有效值：`classic`、`application`、`network` 預設：`application`  | 
|  `-es` 或 `--enable-spot`  |  為您的環境啟用 Spot 執行個體請求。如需更多詳細資訊，請參閱 [Auto Scaling 群組](using-features.managing.as.md)。 相關選項： [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/elasticbeanstalk/latest/dg/eb3-create.html)  | 
| --env-group-suffix groupname | 欲附加至環境名稱的群組名稱。僅能搭配 [編寫環境](ebcli-compose.md) 使用。 | 
|  `--envvars`  |  以逗號分隔清單列出的[環境屬性](environments-cfg-softwaresettings.md)，格式為 *name*=*value*。請參閱 [設定環境屬性 (環境變數)](environments-cfg-softwaresettings.md#environments-cfg-softwaresettings-console) 了解限制。  | 
|  `-ip` *profile\$1name* 或 `--instance_profile` *profile\$1name*  |  具有 IAM 角色的執行個體描述檔，具有應用程式存取 AWS 資源所需的臨時安全登入資料。  | 
|  `-it` 或 `-﻿-﻿instance-types type1[,type2 ...]`  |  您要讓環境使用的逗號分隔 Amazon EC2 執行個體類型清單。如果您未指定此選項，則 Elastic Beanstalk 會提供預設的執行個體類型。 如需詳細資訊，請參閱 [Amazon EC2 執行個體](using-features.managing.ec2.md) 及 [Auto Scaling 群組](using-features.managing.as.md)。  EB CLI 僅將此選項套用至 Spot 執行個體。除非搭配 `--enable-spot` 選項使用此選項，否則 EB CLI 會加以忽略。若要指定隨需執行個體的執行個體類型，請改用 `--intance-type` (沒有 "s") 選項。   | 
|  `-i` 或 `--instance_type`  |  您要讓環境使用的 Amazon EC2 執行個體類型。如果您未指定此選項，則 Elastic Beanstalk 會提供預設的執行個體類型。 如需更多詳細資訊，請參閱 [Amazon EC2 執行個體](using-features.managing.ec2.md)。  EB CLI 只會將此選項套用於隨需執行個體。請勿搭配 `--enable-spot` 選項使用此選項，因為 EB CLI 會在您如此使用時忽略此選項。若要指定 Spot 執行個體的執行個體類型，請改用 `--intance-types` (有 "s") 選項。   | 
|  `-k` *key\$1name* 或 `--keyname` *key\$1name*  |  要搭配安全殼層 (SSH) 用戶端使用的 Amazon EC2 金鑰對名稱，以安全登入執行 Elastic Beanstalk 應用程式的 Amazon EC2 執行個體。若您的 **eb create** 命令納入此選項，則您提供的該值會覆寫 **eb init** 指定的金鑰名稱。 有效值：向 Amazon EC2 註冊的現有金鑰名稱  | 
|  `-im` *number-of-instances* 或 `--min-instances` *number-of-instances*  |  要求環境具備的 Amazon EC2 執行個體數目下限。 類型：數值 (整數) 預設：`1` 有效值：`1` 至 `10000`  | 
|  `-ix` *number-of-instances* 或 `--max-instances` *number-of-instances*  |  允許環境擁有的 Amazon EC2 執行個體數目上限。 類型：數值 (整數) 預設：`4` 有效值：`1` 至 `10000`  | 
|  `--modules` *component-a component-b*  | 欲建立的元件環境清單。僅能搭配[編寫環境](ebcli-compose.md)使用。 | 
|  `-sb` 或 `--on-demand-base-capacity`  |  隨著環境擴展，Auto Scaling 群組在考量 Spot 執行個體前佈建的最小隨需執行個體數量。 此選項只能搭配 `--enable-spot` 選項一起指定。如需更多詳細資訊，請參閱 [Auto Scaling 群組](using-features.managing.as.md)。 類型：數值 (整數) 預設：`0` 有效值：`0` 到 `--max-instances` (缺少時：[`MaxSize`](command-options-general.md#command-options-general-autoscalingasg) 命名空間中的 `aws:autoscaling:asg` 選項)  | 
|  `-sp` 或 `--on-demand-above-base-capacity`  |  隨需執行個體百分比 (Auto Scaling 群組超出 `--on-demand-base-capacity` 選項所指定之執行個體數量所怖建的一部分額外容量)。 此選項只能搭配 `--enable-spot` 選項一起指定。如需詳細資訊，請參閱 [Auto Scaling 群組](using-features.managing.as.md)。 類型：數值 (整數) 預設：`0` 適用於單一執行個體環境；`70` 適用於負載平衡環境 有效值：`0` 至 `100`  | 
|  `-p` *platform-version* 或 `--platform` *platform-version*  |  要使用的[平台版本](concepts.platforms.md)。您可以指定平台名稱、平台名稱及版本、平台分支、解決方案堆疊名稱或解決方案堆疊 ARN。例如： [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/elasticbeanstalk/latest/dg/eb3-create.html) 使用 [`eb platform list`](eb3-platform.md) 取得可用組態的清單。 如果您指定 `--platform` 選項，即會覆寫 `eb init` 期間所提供的數值。  | 
|  `-pr` 或 `--process`  |  預處理並驗證原始碼套件中的環境資訊清單和組態檔案。驗證組態檔案可在將應用程式版本部署至環境前辨識問題。  | 
|  `-r` *區域* 或 `--region` *區域*  |  您要部署應用程式的 AWS 區域。 如需可以為此選項指定的值之清單，請參閱《*AWS 一般參考*》中的[AWS Elastic Beanstalk 端點與配額](https://docs.aws.amazon.com/general/latest/gr/elasticbeanstalk.html)。  | 
|  `--sample`  |  將範例應用程式部署至新的環境，而非儲存庫中的程式碼。  | 
|  `--scale` *number-of-instances*  |  以特定數量的執行個體來啟動  | 
| --service-role servicerole | 將非預設服務角色指派至環境。 請勿輸入 ARN。只輸入角色名稱。Elastic Beanstalk 會在角色名稱前綴正確的值，在內部建立所產生的 ARN。  | 
|  `-ls` *load-balancer* 或 `--shared-lb` *load-balancer*  |  將環境設定為使用共享負載平衡器。提供您帳戶中可共享負載平衡器的名稱或 ARN (由您明確建立而不是其他 Elastic Beanstalk 環境所建立的 Application Load Balancer)。如需更多詳細資訊，請參閱 [共享 Application Load Balancer](environments-cfg-alb-shared.md)。 參數範例： [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/elasticbeanstalk/latest/dg/eb3-create.html) 您只能使用 `--elb-type application` 指定此選項。如果您指定該選項但未指定 `--shared-lb`，Elastic Beanstalk 會為該環境建立專用負載平衡器。  | 
|  `-lp` *連接埠* 或 `--shared-lb-port` *連接埠*  |  此環境之共享負載平衡器的預設接聽程式連接埠。Elastic Beanstalk 會新增接聽程式規則，以將此接聽程式的所有流量路由傳送至預設環境程序。如需更多詳細資訊，請參閱 [共享 Application Load Balancer](environments-cfg-alb-shared.md)。 類型：數值 (整數) 預設：`80` 有效值：代表共享負載平衡器之接聽程式連線埠的任何整數。  | 
|  `--single`  |  透過單一 Amazon EC2 執行個體建立環境，無須負載平衡器。  單一執行個體環境並非可立即生產。如果執行個體在部署期間變得不穩定，或者 Elastic Beanstalk 在組態更新期間終止並重新啟動執行個體，您的應用程式可能會有一段時間無法使用。使用單一執行個體環境來開發、測試或封測。使用負載平衡環境來生產。   | 
|  `-sm` 或 `--spot-max-price`  |  您願意為 Spot 執行個體支付的每單位小時最高價格 (以美元為單位)。 此選項只能搭配 `--enable-spot` 選項一起指定。如需詳細資訊，請參閱 [Auto Scaling 群組](using-features.managing.as.md)。 類型：數字 (浮點數) 預設：每個執行個體類型的隨需價格。在此情況下，選項的數值為 `null`。 有效值：`0.001` 至 `20.0` 如需 Spot 執行個體最高價格選項的建議，請參閱《*Amazon EC2 使用者指南》中的* [Spot 執行個體定價歷史記錄](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-spot-instances-history.html)。  | 
|  `-﻿-﻿tags key1=value1[,key2=value2 ...]`  |  標記您環境的資源。指定標籤的格式為以逗號分隔的 `key=value` 對清單。 如需詳細資訊，請參閱[標記環境](using-features.tagging.md)。  | 
|  `-t worker` 或 `--tier worker`  | 建立工作者環境。忽略此選項來建立 Web 伺服器環境。 | 
|  `--timeout` *分鐘*  |  設定命令逾時前的分鐘數。  | 
|  `--version` *version\$1label*  |  指定欲部署至環境的應用程式版本，而非本機專案目錄中的應用程式原始碼。 類型：字串 有效值：現有應用程式版本標籤  | 
|  `--vpc`  |  設定您環境的 VPC。納入此選項時，EB CLI 會提示您輸入所有必要的設定，然後才會啟動環境。  | 
|  `--vpc.dbsubnets subnet1,subnet2`  |  指定 VPC 內資料庫執行個體的子網路。指定 `--vpc.id` 時為必要。  | 
|  `--vpc.ec2subnets subnet1,subnet2`  |  指定 VPC 內 Amazon EC2 執行個體的子網路。指定 `--vpc.id` 時為必要。  | 
|  `--vpc.elbpublic`  |  在您 VPC 的公有子網路啟動 Elastic Load Balancing 負載平衡器。 您可以使用 `--tier worker` 或 `--single` 選項指定此選項。  | 
|  `--vpc.elbsubnets subnet1,subnet2`  |  指定 VPC 內 Elastic Load Balancing 負載平衡器的子網路。 您可以使用 `--tier worker` 或 `--single` 選項指定此選項。  | 
|  `--vpc.id ID`  |  在指定 VPC 內啟動您的環境。  | 
|  `--vpc.publicip`  |  在您 VPC 的公有子網路啟動 Amazon EC2 執行個體。 您可以使用 `--tier worker` 選項指定此選項。  | 
|  `--vpc.securitygroups securitygroup1,securitygroup2`  |  指定安全群組 ID。指定 `--vpc.id` 時為必要。  | 
|  [常用選項](eb3-cmd-options.md)  |  | 

## Output
<a name="eb3-createoutput"></a>

若成功，本命令會以問題來提示您，然後回傳建立操作的狀態。若啟動期間出現問題，可使用 [**eb events**](eb3-events.md) 操作取得詳細資訊。

若您已在應用程式啟用 CodeBuild 支援，**eb create** 會在您建置程式碼時顯示 CodeBuild 的資訊。如需 Elastic Beanstalk 中 CodeBuild 支援的詳細資訊，請參閱[搭配 使用 EB CLI AWS CodeBuild](eb-cli-codebuild.md)。

## 範例
<a name="eb3-createexample1"></a>

下列範例以互動式模式建立環境。

```
$ eb create
Enter Environment Name
(default is tmp-dev): ENTER
Enter DNS CNAME prefix
(default is tmp-dev): ENTER
Select a load balancer type
1) classic
2) application
3) network
(default is 2): ENTER
Environment details for: tmp-dev
  Application name: tmp
  Region: us-east-2
  Deployed Version: app-141029_145448
  Environment ID: e-um3yfrzq22
  Platform: 64bit Amazon Linux 2014.09 v1.0.9 running PHP 5.5
  Tier: WebServer-Standard-1.0
  CNAME: tmp-dev.elasticbeanstalk.com
  Updated: 2014-10-29 21:54:51.063000+00:00
Printing Status:
...
```

下列範例亦以互動式模式建立環境。在此範例中，您的專案目錄沒有應用程式程式碼。此命令會部署範例應用程式，並將其下載至您的本機專案目錄。

```
$ eb create
Enter Environment Name
(default is tmp-dev): ENTER
Enter DNS CNAME prefix
(default is tmp-dev): ENTER
Select a load balancer type
1) classic
2) application
3) network
(default is 2): ENTER
NOTE: The current directory does not contain any source code. Elastic Beanstalk is launching the sample application instead.
Do you want to download the sample application into the current directory?
(Y/n): ENTER
INFO: Downloading sample application to the current directory.
INFO: Download complete.
Environment details for: tmp-dev
  Application name: tmp
  Region: us-east-2
  Deployed Version: Sample Application
  Environment ID: e-um3yfrzq22
  Platform: 64bit Amazon Linux 2014.09 v1.0.9 running PHP 5.5
  Tier: WebServer-Standard-1.0
  CNAME: tmp-dev.elasticbeanstalk.com
  Updated: 2017-11-08 21:54:51.063000+00:00
Printing Status:
...
```

下列命令會建立環境，且不會顯示任何提示。

```
$ eb create dev-env
Creating application version archive "app-160312_014028".
Uploading test/app-160312_014028.zip to S3. This may take a while.
Upload Complete.
Application test has been created.
Environment details for: dev-env
  Application name: test
  Region: us-east-2
  Deployed Version: app-160312_014028
  Environment ID: e-6fgpkjxyyi
  Platform: 64bit Amazon Linux 2015.09 v2.0.8 running PHP 5.6
  Tier: WebServer-Standard
  CNAME: UNKNOWN
  Updated: 2016-03-12 01:40:33.614000+00:00
Printing Status:
...
```

下列命令會在自訂 VPC 內建立環境。

```
$ eb create dev-vpc --vpc.id vpc-0ce8dd99 --vpc.elbsubnets subnet-b356d7c6,subnet-02f74b0c --vpc.ec2subnets subnet-0bb7f0cd,subnet-3b6697c1 --vpc.securitygroup sg-70cff265
Creating application version archive "app-160312_014309".
Uploading test/app-160312_014309.zip to S3. This may take a while.
Upload Complete.
Environment details for: dev-vpc
  Application name: test
  Region: us-east-2
  Deployed Version: app-160312_014309
  Environment ID: e-pqkcip3mns
  Platform: 64bit Amazon Linux 2015.09 v2.0.8 running Java 8
  Tier: WebServer-Standard
  CNAME: UNKNOWN
  Updated: 2016-03-12 01:43:14.057000+00:00
Printing Status:
...
```

# **eb deploy**
<a name="eb3-deploy"></a>

## Description
<a name="eb3-deploydescription"></a>

將應用程式原始碼套件從初始化專案目錄部署至執行中的應用程式。

若已安裝 git，則 EB CLI 會根據最近的 `git archive` 命令的內容，使用 `.zip` 命令來建立 `git commit` 檔案。

然而，當 `.ebignore` 存在於您的專案目錄時，EB CLI 不會使用 git 命令和語義來建立您的原始碼套件。這表示 EB CLI 會忽略 `.ebignore` 指定的檔案，並納入所有其他檔案，尤其是未遞交的來源檔案。

**注意**  
您亦可設定 EB CLI 從建置程序部署組建成品，而非建立您專案資料夾的 ZIP 檔案。如需詳細資訊，請參閱 [部署成品而非專案資料夾](eb-cli3-configuration.md#eb-cli3-artifact)。

## 語法
<a name="eb3-deploysyntax"></a>

 **eb deploy** 

 **eb deploy *environment-name*** 

## 選項
<a name="eb3-deployoptions"></a>


****  

|  名稱  |  描述  | 
| --- | --- | 
|  `-l` *version\$1label* 或 `--label` *version\$1label*  |  指定用於 EB CLI 建立的版本的標籤。若已使用該標籤，EB CLI 會重新部署使用該標籤的之前版本。 類型：字串  | 
| --env-group-suffix groupname | 欲附加至環境名稱的群組名稱。僅能搭配 [編寫環境](ebcli-compose.md) 使用。 | 
|  `-m` "*version\$1description*" 或 `--message` "*version\$1description*"  |  應用程式版本的描述，以雙引號括住。 類型：字串  | 
|  `--modules` *component-a component-b*  | 欲更新元件的清單。僅能搭配 [編寫環境](ebcli-compose.md) 使用。 | 
|  `-p` 或 `--process`  |  預處理並驗證原始碼套件中的環境資訊清單和組態檔案。驗證組態檔案可在將應用程式版本部署至環境前辨識問題。  | 
|  `--source codecommit/repository-name/branch-name`  |  CodeCommit 儲存庫和分支。  | 
|  `--staged`  |  部署暫存於 git 索引的檔案，而非 HEAD 遞交的檔案。  | 
|  `--timeout` *分鐘*  |  命令逾時前的分鐘數。  | 
|  `--version` *version\$1label*  |  欲部署的現有應用程式版本。 類型：字串  | 
|  [常用選項](eb3-cmd-options.md)  |  | 

## Output
<a name="eb3-deployoutput"></a>

若成功，本命令會回傳 `deploy` 操作的狀態。

若您已在應用程式啟用 CodeBuild 支援，**eb deploy** 會在您建置程式碼時顯示 CodeBuild 的資訊。如需 Elastic Beanstalk 中 CodeBuild 支援的詳細資訊，請參閱[搭配 使用 EB CLI AWS CodeBuild](eb-cli-codebuild.md)。

## 範例
<a name="eb3-deployexample"></a>

下列範例會部署現行應用程式。

```
$ eb deploy
2018-07-11 21:05:22    INFO: Environment update is starting.
2018-07-11 21:05:27    INFO: Deploying new version to instance(s).
2018-07-11 21:05:53    INFO: New application version was deployed to running EC2 instances.
2018-07-11 21:05:53    INFO: Environment update completed successfully.
```

# **eb events**
<a name="eb3-events"></a>

## Description
<a name="eb3-eventsdescription"></a>

回傳環境最近的事件。

如果根目錄包含 `platform.yaml` 檔案，其中指定自訂的平台，則此指令也會傳回建置器環境的最新事件。

## 語法
<a name="eb3-eventssyntax"></a>

 **eb events** 

 **eb events *environment-name*** 

## 選項
<a name="eb3-eventsoptions"></a>


****  

|  名稱  |  描述  | 
| --- | --- | 
|  `-f` 或 `--follow`  |  串流事件。若要取消，請按下 CTRL\$1C。  | 

## Output
<a name="eb3-eventsoutput"></a>

如果成功，此指令會傳回最近的事件。

## 範例
<a name="eb3-eventsexample"></a>

下列範例會傳回最新的事件。

```
$ eb events
2014-10-29 21:55:39     INFO    createEnvironment is starting.
2014-10-29 21:55:40     INFO    Using elasticbeanstalk-us-west-2-111122223333 as Amazon S3 storage bucket for environment data.
2014-10-29 21:55:57     INFO    Created load balancer named: awseb-e-r-AWSEBLoa-NSKUOK5X6Z9J
2014-10-29 21:56:16     INFO    Created security group named: awseb-e-rxgrhjr9bx-stack-AWSEBSecurityGroup-1UUHU5LZ20ZY7
2014-10-29 21:57:18     INFO    Waiting for EC2 instances to launch. This may take a few minutes.
2014-10-29 21:57:18     INFO    Created Auto Scaling group named: awseb-e-rxgrhjr9bx-stack-AWSEBAutoScalingGroup-1TE320ZCJ9RPD
2014-10-29 21:57:22     INFO    Created Auto Scaling group policy named: arn:aws:autoscaling:us-east-2:11122223333:scalingPolicy:2cced9e6-859b-421a-be63-8ab34771155a:autoScalingGroupName/awseb-e-rxgrhjr9bx-stack-AWSEBAutoScalingGroup-1TE320ZCJ9RPD:policyName/awseb-e-rxgrhjr9bx-stack-AWSEBAutoScalingScaleUpPolicy-1I2ZSNVU4APRY
2014-10-29 21:57:22     INFO    Created Auto Scaling group policy named: arn:aws:autoscaling:us-east-2:11122223333:scalingPolicy:1f08b863-bf65-415a-b584-b7fa3a69a0d5:autoScalingGroupName/awseb-e-rxgrhjr9bx-stack-AWSEBAutoScalingGroup-1TE320ZCJ9RPD:policyName/awseb-e-rxgrhjr9bx-stack-AWSEBAutoScalingScaleDownPolicy-1E3G7PZKZPSOG
2014-10-29 21:57:25     INFO    Created CloudWatch alarm named: awseb-e-rxgrhjr9bx-stack-AWSEBCloudwatchAlarmLow-VF5EJ549FZBL
2014-10-29 21:57:25     INFO    Created CloudWatch alarm named: awseb-e-rxgrhjr9bx-stack-AWSEBCloudwatchAlarmHigh-LA9YEW3O6WJO
2014-10-29 21:58:50     INFO    Added EC2 instance 'i-c7ee492d' to Auto ScalingGroup 'awseb-e-rxgrhjr9bx-stack-AWSEBAutoScalingGroup-1TE320ZCJ9RPD'.
2014-10-29 21:58:53     INFO    Successfully launched environment: tmp-dev
2014-10-29 21:59:14     INFO    Environment health has been set to GREEN
2014-10-29 21:59:43     INFO    Adding instance 'i-c7ee492d' to your environment.
```

# **eb health**
<a name="eb3-health"></a>

## Description
<a name="eb3-healthdescription"></a>

回傳環境最近的運作狀態。

如果根目錄包含 `platform.yaml` 檔案，其中指定自訂的平台，則此命令也會傳回建置器環境的最新運作狀態。

## 語法
<a name="eb3-healthsyntax"></a>

 **eb health** 

 **eb health *environment-name*** 

## 選項
<a name="eb3-healthoptions"></a>


****  

|  名稱  |  描述  | 
| --- | --- | 
|  `-r` 或 `--refresh`  |  以互動方式顯示運作狀態資訊，並在報告新資訊時每 10 秒更新。  | 
| --mono | 輸出不要顯示顏色。 | 

## Output
<a name="eb3-healthoutput"></a>

如果成功，此命令會傳回最近的運作狀態。

## 範例
<a name="eb3-healthexample"></a>

以下範例會傳回 Linux 環境最近的運作狀態資訊。

```
~/project $ eb health
 elasticBeanstalkExa-env                                  Ok                       2015-07-08 23:13:20
WebServer                                                                              Ruby 2.1 (Puma)
  total      ok    warning  degraded  severe    info   pending  unknown
    5        5        0        0        0        0        0        0

  instance-id   status     cause                                                                                                health
    Overall     Ok
  i-d581497d    Ok
  i-d481497c    Ok
  i-136e00c0    Ok
  i-126e00c1    Ok
  i-8b2cf575    Ok

  instance-id   r/sec    %2xx   %3xx   %4xx   %5xx      p99      p90      p75     p50     p10                                 requests
    Overall     671.8   100.0    0.0    0.0    0.0    0.003    0.002    0.001   0.001   0.000
  i-d581497d    143.0    1430      0      0      0    0.003    0.002    0.001   0.001   0.000
  i-d481497c    128.8    1288      0      0      0    0.003    0.002    0.001   0.001   0.000
  i-136e00c0    125.4    1254      0      0      0    0.004    0.002    0.001   0.001   0.000
  i-126e00c1    133.4    1334      0      0      0    0.003    0.002    0.001   0.001   0.000
  i-8b2cf575    141.2    1412      0      0      0    0.003    0.002    0.001   0.001   0.000

  instance-id   type       az   running     load 1  load 5      user%  nice%  system%  idle%   iowait%                             cpu
  i-d581497d    t2.micro   1a   12 mins        0.0    0.04        6.2    0.0      1.0   92.5       0.1
  i-d481497c    t2.micro   1a   12 mins       0.01    0.09        5.9    0.0      1.6   92.4       0.1
  i-136e00c0    t2.micro   1b   12 mins       0.15    0.07        5.5    0.0      0.9   93.2       0.0
  i-126e00c1    t2.micro   1b   12 mins       0.17    0.14        5.7    0.0      1.4   92.7       0.1
  i-8b2cf575    t2.micro   1c   1 hour        0.19    0.08        6.5    0.0      1.2   92.1       0.1
  
  instance-id   status     id   version              ago                                                                   deployments
  i-d581497d    Deployed   1    Sample Application   12 mins
  i-d481497c    Deployed   1    Sample Application   12 mins
  i-136e00c0    Deployed   1    Sample Application   12 mins
  i-126e00c1    Deployed   1    Sample Application   12 mins
  i-8b2cf575    Deployed   1    Sample Application   1 hour
```

# **eb init**
<a name="eb3-init"></a>

## Description
<a name="eb3-initdescription"></a>

透過一系列問題提示，針對使用 EB CLI 為 Elastic Beanstalk 應用程式建立的預設值進行設定。

**注意**  
您以 設定的值會**eb init**套用至目前電腦上的目前目錄和儲存庫。  
命令會在您的帳戶中建立 Elastic Beanstalk 應用程式。若要建立 Elastic Beanstalk 環境，請在執行 **eb init** 後執行 **[eb create](eb3-create.md)**。

## 語法
<a name="eb3-initsyntax"></a>

 **eb init** 

 **eb init** *application-name* 

## 選項
<a name="eb3-initoptions"></a>

若您未指示 `--platform` 選項即執行 **eb init**，EB CLI 將提示您輸入每個設定的值。

**注意**  
欲使用 **eb init** 來建立新的金鑰對，`ssh-keygen` 必須安裝於您的本機機器且可從命令列取用。


****  

|  名稱  |  描述  |  | 
| --- | --- | --- | 
|  `-i` `--interactive`  |  強制 EB CLI 提示您提供每個 **eb init** 命令選項的值。  `init` 命令會提示您為沒有 (預設) 值的 **eb init** 命令選項提供值。首次於目錄中執行 **eb init** 命令後，EB CLI 可能不會提示您輸入命令選項。因此，欲變更您之前的設定，請使用 `--interactive` 選項。   |  | 
|  `-k` *keyname* `--keyname` *keyname*  |  要搭配安全殼層 (SSH) 用戶端使用的 Amazon EC2 金鑰對名稱，以安全登入執行 Elastic Beanstalk 應用程式的 Amazon EC2 執行個體。  |  | 
|  `--modules folder-1 folder-2`  |  欲初始化的子目錄清單。僅能搭配 [編寫環境](ebcli-compose.md) 使用。  |  | 
|  `-p` *platform-version*  `--platform` *platform-version*  |  要使用的[平台版本](concepts.platforms.md)。您可以指定平台名稱、平台名稱及版本、平台分支、解決方案堆疊名稱或解決方案堆疊 ARN。例如： [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/elasticbeanstalk/latest/dg/eb3-init.html) 使用 [`eb platform list`](eb3-platform.md) 取得可用組態的清單。 指定 `--platform` 選項以略過互動式組態。  指定此選項時，EB CLI 不會提示您輸入其他選項的值，而會取得每個選項的預設值。您可指定不想使用預設值的選項。   |  | 
|  `--source codecommit/repository-name/branch-name`  |  CodeCommit 儲存庫和分支。  |  | 
|  `-﻿-﻿tags key1=value1[,key2=value2 ...]`  |  標記您的應用程式。指定標籤的格式為以逗號分隔的 `key=value` 對清單。 如需詳細資訊，請參閱[標記應用程式](applications-tagging.md)。  | 
|  [常用選項](eb3-cmd-options.md)  |  |  | 

## CodeBuild 支援
<a name="eb3-init-codebuild"></a>

若您在包含 [buildspec.yml](https://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html) 檔案的資料夾中執行 **eb init**，Elastic Beanstalk 會針對選項為 Elastic Beanstalk 專屬選項的 **eb\$1codebuild\$1settings** 項目剖析檔案。如需 Elastic Beanstalk 中 CodeBuild 支援的詳細資訊，請參閱[搭配 使用 EB CLI AWS CodeBuild](eb-cli-codebuild.md)。

## Output
<a name="eb3-initoutput"></a>

若成功，本命令將透過一連串提示引導您設定新的 Elastic Beanstalk 應用程式。

## 範例
<a name="eb3-initexample"></a>

下列範例請求會初始化 EB CLI，並提示您輸入應用程式的資訊。以自訂值取代*預留位置*的文字。

```
$ eb init -i
Select a default region
1) us-east-1 : US East (N. Virginia)
2) us-west-1 : US West (N. California)
3) us-west-2 : US West (Oregon)
4) eu-west-1 : Europe (Ireland)
5) eu-central-1 : Europe (Frankfurt)
6) ap-south-1 : Asia Pacific (Mumbai)
7) ap-southeast-1 : Asia Pacific (Singapore)
...
(default is 3): 3

Select an application to use
1) HelloWorldApp
2) NewApp
3) [ Create new Application ]
(default is 3): 3

Enter Application Name
(default is "tmp"):
Application tmp has been created.

It appears you are using PHP. Is this correct?
(y/n): y

Select a platform branch.
1) PHP 7.2 running on 64bit Amazon Linux
2) PHP 7.1 running on 64bit Amazon Linux (Deprecated)
3) PHP 7.0 running on 64bit Amazon Linux (Deprecated)
4) PHP 5.6 running on 64bit Amazon Linux (Deprecated)
5) PHP 5.5 running on 64bit Amazon Linux (Deprecated)
6) PHP 5.4 running on 64bit Amazon Linux (Deprecated)
(default is 1): 1
Do you want to set up SSH for your instances?
(y/n): y

Select a keypair.
1) aws-eb
2) [ Create new KeyPair ]
(default is 2): 1
```

# **eb labs**
<a name="eb3-labs"></a>

## Description
<a name="eb3-labsdescription"></a>

**eb labs** 的子命令支援進行中或實驗性功能。這些命令可能會於 EB CLI 的未來版本移除或修改，且不保證正向相容。

如需可用的子命令清單和描述，請執行 **eb labs --help**。

# **eb list**
<a name="eb3-list"></a>

## Description
<a name="eb3-listdescription"></a>

列出目前應用程式中的所有環境，或所有應用程式中的所有環境，如 `--all` 選項所指定。

如果根目錄包含 `platform.yaml` 檔案，其中指定自訂的平台，則此指令也會列出建置器的環境。

## 語法
<a name="eb3-listsyntax"></a>

 **eb list** 

## 選項
<a name="listoptions"></a>


****  

|  名稱  |  描述  | 
| --- | --- | 
|  `-a` 或 `--all`  |  列出所有應用程式的所有環境。  | 
|  `-v` 或 `--verbose`  |  提供關於所有環境的詳細資訊，包括執行個體。  | 
|  [常用選項](eb3-cmd-options.md)  |  | 

## Output
<a name="eb3-listoutput"></a>

如果成功，指令會傳回環境名稱的清單，其中會以星號 (\$1) 標記您目前的環境。

## 範例 1
<a name="eb3-listexample1"></a>

以下範例列出了您的環境，並指出 tmp-dev 是您預設的環境。

```
$ eb list
* tmp-dev
```

## 範例 2
<a name="eb3-listexample2"></a>

以下範例列出了您的環境和其他的詳細資訊。

```
$ eb list --verbose
Region: us-west-2
Application: tmp
    Environments: 1
        * tmp-dev : ['i-c7ee492d']
```

# **eb local**
<a name="eb3-local"></a>

## Description
<a name="eb3-localdescription"></a>

透過 **eb local run** 於 Docker 本機內執行應用程式的容器。透過 **eb local status** 檢查應用程式的容器狀態。使用 **eb local open** 在 Web 瀏覽器開啟應用程式：透過 **eb local logs** 擷取應用程式的日誌位置。

**eb local setenv** 和 **eb local printenv** 可讓您設定及檢視提供給 Docker 容器的環境變數，並透過 **eb local run** 於本機執行。

您必須使用 **eb local** 將 Docker 應用程式初始化為 EB CLI 儲存庫，之後才能在其專案目錄執行所有 **eb init** 命令。

**注意**  
於執行 Linux 或 macOS 的本機電腦上使用 **eb local**。此命令不支援 Windows。  
在 macOS 上使用命令之前，請安裝 Mac 版 Docker，並確保未安裝 boot2docker (或不在執行路徑中)。**eb local** 命令會嘗試使用 boot2docker (如果存在)，但在 macOS 上此動作無法正確運作。

## 語法
<a name="eb3-localsyntax"></a>

**eb local run**

**eb local status**

**eb local open**

**eb local logs**

**eb local setenv**

**eb local printenv**

## 選項
<a name="eb3-localoptions"></a>

**eb local run**


****  

|  名稱  |  描述  | 
| --- | --- | 
|  `--envvars key1=value1,key2=value2`  |  設定 EB CLI 將傳送至本機 Docker 容器的環境變數。在多容器環境中，所有變數都會傳送至所有容器。  | 
|  `--port hostport`  |  將主機上的連接埠對應至容器的外部連接埠。若您未指定此選項，EB CLI 會於主機和容器上使用相同的連接埠。 此選項僅適用於 Docker 平台的應用程式，不適用於多容器 Docker 平台。  | 
|  [常用選項](eb3-cmd-options.md)  |  | 

**eb local status**

**eb local open**

**eb local logs**

**eb local setenv**

**eb local printenv**

 


****  

|  名稱  |  描述  | 
| --- | --- | 
|  [常用選項](eb3-cmd-options.md)  |  | 

## Output
<a name="eb3-localoutput"></a>

**eb local run**

來自 Docker 的狀態訊息。只要應用程式正在執行，將維持啟用。按 **Ctrl\$1C** 來停止應用程式。

**eb local status**

應用程式使用的每個容器的狀態，表示是否執行中。

**eb local open**

在 Web 瀏覽器開啟應用程式並退出。

**eb local logs**

應用程式透過 **eb local run** 於本機執行在您的專案目錄所產生的日誌位置。

**eb local setenv**

無

**eb local printenv**

透過 **eb local setenv** 設定的環境變數名稱和值。

## 範例
<a name="eb3-localexamples"></a>

**eb local run**

```
~/project$ eb local run
Creating elasticbeanstalk_phpapp_1...
Creating elasticbeanstalk_nginxproxy_1...
Attaching to elasticbeanstalk_phpapp_1, elasticbeanstalk_nginxproxy_1
phpapp_1     | [23-Apr-2015 23:24:25] NOTICE: fpm is running, pid 1
phpapp_1     | [23-Apr-2015 23:24:25] NOTICE: ready to handle connections
```

**eb local status**

檢視您的本機容器狀態：

```
~/project$ eb local status
Platform: 64bit Amazon Linux 2014.09 v1.2.1 running Multi-container Docker 1.3.3 (Generic)
Container name: elasticbeanstalk_nginxproxy_1
Container ip: 127.0.0.1
Container running: True
Exposed host port(s): 80
Full local URL(s): 127.0.0.1:80

Container name: elasticbeanstalk_phpapp_1
Container ip: 127.0.0.1
Container running: True
Exposed host port(s): None
Full local URL(s): None
```

**eb local logs**

檢視目前專案的日誌路徑：

```
~/project$ eb local logs
Elastic Beanstalk will write logs locally to /home/user/project/.elasticbeanstalk/logs/local.
Logs were most recently created 3 minutes ago and written to /home/user/project/.elasticbeanstalk/logs/local/150420_234011665784.
```

**eb local setenv**

設定搭配 **eb local run** 使用的環境變數。

```
~/project$ eb local setenv PARAM1=value
```

列印透過 **eb local setenv** 設定的環境變數。

```
~/project$ eb local printenv
Environment Variables:
PARAM1=value
```

# **eb logs**
<a name="eb3-logs"></a>

## Description
<a name="eb3-logsdescription"></a>

**eb logs** 命令有三種不同的用途：啟用或停用 CloudWatch Logs 的日誌串流、擷取執行個體日誌或 CloudWatch Logs 日誌，以及請求對您環境進行 AI 支援的分析。使用 `--cloudwatch-logs` (`-cw`) 選項，該命令會啟用或停用日誌串流。使用 `--analyze`(`-ai`) 選項，命令會請求對您環境的日誌、事件和執行個體運作狀態進行 AI 技術的分析。如果沒有這些選項，它會擷取日誌。

當擷取日誌、指定 `--all`、`--zip` 或 `--stream` 選項以擷取完整的日誌。如果您不指定這些的任何選項，Elastic Beanstalk 會擷取結尾日誌。

命令會處理指定或預設環境的日誌。相關日誌依容器類型而異。如果根目錄包含 `platform.yaml` 檔案，其中指定自訂的平台，則此命令也會處理建置器環境的日誌。

如需詳細資訊，請參閱[搭配 Amazon CloudWatch Logs 使用 Elastic Beanstalk](AWSHowTo.cloudwatchlogs.md)。如需 AI 驅動分析的詳細資訊，請參閱 [AI 驅動的環境分析](health-ai-analysis.md)。

## 語法
<a name="eb3-logssyntax"></a>

 啟用或停用將日誌串流到 CloudWatch Logs：

```
eb logs --cloudwatch-logs [enable | disable] [--cloudwatch-log-source instance | environment-health | all] [environment-name]
```

 若要擷取執行個體日誌：

```
eb logs [-all | --zip | --stream] [--cloudwatch-log-source instance] [--instance instance-id] [--log-group log-group] [environment-name]
```

 若要擷取環境運作狀態日誌：

```
eb logs [-all | --zip | --stream] --cloudwatch-log-source environment-health [environment-name]
```

 若要請求 AI 驅動的分析：

```
eb logs --analyze [environment-name]
```

## 選項
<a name="eb3-logsoptions"></a>


****  

|  名稱  |  描述  | 
| --- | --- | 
|  `-cw [enable \| disable]` 或 `--cloudwatch-logs [enable \| disable]`  |  啟用或停用將日誌串流到 CloudWatch Logs。若未提供引數，則會啟用日誌串流。如果未另外指定 `--cloudwatch-log-source` (`-cls`) 選項，便會啟用或停用執行個體日誌串流。  | 
|  `-cls instance \| environment-health \| all` 或 `--cloudwatch-log-source instance \| environment-health \| all`  |  指定使用 CloudWatch Logs 時的日誌來源。使用啟用或停用形式的命令，這些是可為其啟用或停用 CloudWatch Logs 串流的日誌。使用擷取形式的命令，這些是從 CloudWatch Logs 擷取的日誌。 有效值： [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/elasticbeanstalk/latest/dg/eb3-logs.html) 值含意： [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/elasticbeanstalk/latest/dg/eb3-logs.html)  | 
|  `-a` 或 `--all`  |  擷取完整日誌，並將其儲存至 `.elasticbeanstalk/logs` 目錄。  | 
|  `-z` 或 `--zip`  |  擷取完整日誌，將其壓縮為 `.zip` 檔案並儲存至 `.elasticbeanstalk/logs` 目錄。  | 
|  `--stream`  |  串流 (持續輸出) 完整的日誌。使用此選項時，命令會持續執行直到中斷 (按下 **Ctrl\$1C**)。  | 
|  `-i instance-id` 或 `--instance instance-id`  |  僅擷取指定執行個體的日誌。  | 
|  `-g log-group` 或 `--log-group log-group`  |  指定擷取日誌之來源的 CloudWatch Logs 日誌群組。此選項只在啟用執行個體日誌串流到 CloudWatch Logs 時有效。 如果啟用執行個體日誌串流，而且您未指定 `--log-group` 選項，預設的日誌群組是以下其中一項： [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/elasticbeanstalk/latest/dg/eb3-logs.html) 如需有關對應到每個日誌檔的日誌群組的詳細資訊，請參閱 [Elastic Beanstalk 如何設定 CloudWatch Logs](AWSHowTo.cloudwatchlogs.md#AWSHowTo.cloudwatchlogs.loggroups)。  | 
|  `-ai` 或 `--analyze`  |  請求對環境日誌、事件和執行個體運作狀態進行 AI 支援的分析。分析使用 Amazon Bedrock 來識別根本原因，並建議環境運作狀態問題的解決方案。命令會傳送請求、等待分析完成，然後顯示結果。 此選項與 `--instance`、`--all`、`--log-group`、 `--zip`或 不相容`--cloudwatch-logs`。 如需先決條件和必要許可，請參閱 [AI 驅動的環境分析](health-ai-analysis.md)。  | 
|  [常用選項](eb3-cmd-options.md)  |  | 

## Output
<a name="eb3-logsoutput"></a>

在預設情況下，會直接在終端機顯示日誌。使用分頁程式以顯示輸出。按下 **Q** 或 **q** 以退出。

使用 `--stream`，在終端機顯示現有的日誌，並持續執行。按下 **Ctrl\$1C** 離開。

使用 `--all` 和 `--zip`，將日誌儲存到本機檔案，並顯示檔案的位置。

透過 `--analyze`， 會在分析完成後，直接在終端機中顯示 AI 產生的分析。

## 範例
<a name="logsexample"></a>

以下範例啟用將執行個體日誌串流到 CloudWatch Logs。

```
$ eb logs -cw enable
Enabling instance log streaming to CloudWatch for your environment
After the environment is updated you can view your logs by following the link:
https://console.aws.amazon.com/cloudwatch/home?region=us-east-1#logs:prefix=/aws/elasticbeanstalk/environment-name/
Printing Status:
2018-07-11 21:05:20    INFO: Environment update is starting.
2018-07-11 21:05:27    INFO: Updating environment environment-name's configuration settings.
2018-07-11 21:06:45    INFO: Successfully deployed new configuration to environment.
```

以下範例擷取執行個體日誌到 `.zip` 檔案。

```
$ eb logs --zip
Retrieving logs...
Logs were saved to /home/workspace/environment/.elasticbeanstalk/logs/150622_173444.zip
```

下列範例會請求環境的 AI 驅動分析。

```
$ eb logs --analyze
Analyzing environment...
No critical issues detected. Environment appears healthy.

---
Note: This analysis was generated by AI.
```

# **eb migrate**
<a name="eb3-migrate"></a>

## Description
<a name="eb3-migratedescription"></a>

將網際網路資訊服務 (IIS) 網站和應用程式從 Windows 伺服器遷移至 Elastic Beanstalk。命令會封裝您的應用程式、保留其組態，並將它們部署到新的 Elastic Beanstalk 環境。

如需遷移 IIS 網站和應用程式的詳細資訊，請參閱 [將 IIS 應用程式遷移至 Elastic Beanstalk](dotnet-migrating-applications.md)。

**注意**  
使用此命令之前，請確定您的系統符合下列要求：  
Internet Information Services (IIS) 7.0 版或更新版本
已安裝 Web Deploy 3.6 或更新版本
Windows 伺服器上的管理權限
AWS 已設定適當許可的登入資料
您的來源伺服器具有 AWS 服務的傳出網際網路存取權。

下列步驟摘要說明遷移程序：

1. 探索 IIS 網站及其組態。

1. 封裝應用程式內容和組態。

1. 建立 Elastic Beanstalk 環境和應用程式。

1. 使用保留的設定部署應用程式。

命令會在結構化目錄中建立遷移成品，如下列清單所示：

```
C:\migration_workspace\
└── .\migrations\latest\
    ├── upload_target.zip
    └── upload_target\
        ├── [SiteName].zip                      # One ZIP per default application of IIS site
        ├── [SiteName-ApplicationName].zip      # One ZIP per additional application
        ├── aws-windows-deployment-manifest.json
        └── ebmigrateScripts\
            ├── site_installer.ps1              # Site installation scripts
            ├── permission_handler.ps1          # Permission management
            └── other helper scripts
```

使用 **eb migrate cleanup** 管理這些成品。

## 語法
<a name="eb3-migratesyntax"></a>

**eb migrate *[options]***

**eb migrate explore *[options]***

**eb migrate cleanup *[options]***

在沒有引數的情況下執行 時， 會以非互動式模式**eb migrate**運作。若要在互動式模式中執行，請執行 **eb migrate --interactive**。

互動式模式命令會提示以下資訊：
+ 選取要遷移的 IIS 網站
+ 環境和應用程式名稱
+ 平台版本選擇
+ 執行個體類型和其他組態選項

## 子命令
<a name="eb3-migratesubcommands"></a>

### 探索
<a name="eb3-migrateexplore"></a>

**eb migrate explore** 子命令會檢查您的 IIS 伺服器並列出可用的網站。

使用此命令來顯示下列資訊：
+ 檢視伺服器上的所有 IIS 網站
+ 使用 `--verbose`，檢查詳細組態，包括：
  + 網站繫結和連接埠
  + 應用程式集區
  + 虛擬目錄及其實體路徑
  + 身分驗證設定

```
PS C:\migrations_workspace >  eb migrate explore
Default Web Site
Site2
site3
router
```

```
PS C:\migrations_workspace >  eb migrate explore --verbose
1: Default Web Site:
  - Bindings:
    - *:8083:
  - Application '/':
    - Application Pool: DefaultAppPool
    - Enabled Protocols: http
    - Virtual Directories:
      - /:
        - Physical Path: C:\inetpub\wwwroot
        - Logon Method: ClearText
  - Application '/dotnet-6-0':
    - Application Pool: DefaultAppPool
    - Enabled Protocols: http
    - Virtual Directories:
      - /:
        - Physical Path: C:\inetpub\AspNetCoreWebApps\CoreWebApp-6-0
        - Logon Method: ClearText
  - Application '/dotnet-8-0':
    - Application Pool: DefaultAppPool
    - Enabled Protocols: http
    - Virtual Directories:
      - /:
        - Physical Path: C:\inetpub\AspNetCoreWebApps\CoreWebApp-8-0
        - Logon Method: ClearText
2: Site2:
  - Bindings:
    - *:8081:
...
```

### 清除
<a name="eb3-migratecleanup"></a>

**eb migrate cleanup** 子命令會使用下列動作來管理遷移成品：
+ 在 中保留最新的成功遷移 `./migrations/latest`
+ 移除較舊的遷移目錄
+ 維護關鍵組態檔案

```
PS C:\migrations_workspace >   eb migrate cleanup
Are you sure you would like to cleanup older artifacts within `./migrations/`? (y/N):
```

使用 `--force` 在清除期間略過確認提示。

```
PS C:\migrations_workspace >   eb migrate cleanup --force
```

## 選項
<a name="eb3-migrateoptions"></a>

這些選項均非必要。如果您執行時**eb migrate**沒有任何選項，EB CLI 將以非互動式模式執行。使用 **eb migrate --interactive**，EB CLI 會提示您輸入或選取必要設定的值。


****  

|  名稱  |  描述  | 
| --- | --- | 
|  `-a` *application-name* 或 `--application-name` *application-name*  |  新 Elastic Beanstalk 應用程式的名稱。 類型：字串 預設：EBMigratedApp  | 
|  `--archive` *directory-or-zip*  |  目錄或 ZIP 檔案，其中包含 先前產生的原始碼**eb migrate --archive-only**。 使用此選項可部署先前建立的遷移套件。 範例：`--archive .\migrations\latest\upload_target` 或 `--archive .\migrations\latest\upload_target.zip`  | 
|  `-ao` 或 `--archive-only`  |  僅建立沒有部署的目的地封存目錄。 產生的目錄可以使用 **eb migrate**搭配 `archive`選項或 手動部署**eb deploy**。  | 
|  `-c` *subdomain-name* 或 `--cname` *subdomain-name*  |  要為遷移應用程式加上 CNAME DNS 項目前綴的子網域名稱。 類型：字串 預設：環境名稱  | 
|  `-cf` 或 `--copy-firewall-config`  |  將來源伺服器防火牆組態複製到具有作用中繫結的所有 HTTP 連接埠的目的地。 在 中建立對應的安全群組規則 AWS。  | 
|  `-es` *snapshot-id* 【*snapshot-id* ...】 或 `--ebs-snapshots` *snapshot-id* 【*snapshot-id* ...】  |  要與環境建立關聯的 Amazon EBS 快照 IDs 逗號分隔清單。 範例：`--ebs-snapshots snap-1234567890abcdef0, snap-0987654321fedcba1`  | 
|  `--encrypt-ebs-volumes`  |  強制加密所有新的 Amazon EBS 磁碟區。  這是全帳戶設定，會影響所有未來的 Amazon EBS 磁碟區建立。   | 
|  `-e` *environment-name* 或 `--environment-name` *environment-name*  |  新 Elastic Beanstalk 環境的名稱。 類型：字串 預設：EBMigratedEnv 限制條件：長度必須介於 4 到 40 個字元之間。只能包含字母、數字和連字號。名稱開頭或結尾不能為連字號 (-)。  | 
|  `--force`  |  在操作期間略過確認提示。 與**cleanup**子命令搭配使用時， 會移除遷移成品，無需確認。  | 
|  `-ip` *profile-name* 或 `--instance-profile` *profile-name*  |  要與環境 Amazon EC2 執行個體建立關聯的執行個體設定檔。 如果未指定， 會建立具有存取 Elastic Beanstalk 資源許可的預設執行個體描述檔。如需詳細資訊，請參閱[Elastic Beanstalk 執行個體描述檔](concepts-roles-instance.md)。  | 
|  `-i` *instance-type* 或 `--instance-type` *instance-type*  |  Elastic Beanstalk 環境的 Amazon EC2 執行個體類型。 類型：字串 預設：c5.2xlarge 如需可用的執行個體類型，請參閱[《Amazon EC2 使用者指南》中的 Amazon EC2 執行個體類型](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html)。 *Amazon EC2 *  | 
|  `-in` 或 `--interactive`  |  強制遷移程序的互動式模式。 即使預設值可用，也會提示組態值。  | 
|  `-k` *key-name* 或 `--keyname` *key-name*  |  Amazon EC2 金鑰對，以啟用環境執行個體的 RDP 存取。 可用於調查日誌中看不到的執行個體層級問題。 有效值：向 Amazon EC2 註冊的現有金鑰對名稱  | 
|  `-p` *platform-version* 或 `--platform` *platform-version*  |  環境的 Elastic Beanstalk 平台執行時間。如果未指定，則會自動從主機 Windows Server 版本偵測到 。 範例：`"64bit Windows Server 2016 v2.16.2 running IIS 10.0"` 如需可用平台版本的清單，請使用 [eb 平台清單](eb3-platform.md#eb3-platform-list)。  | 
|  `--remote`  |  指示 在遠端模式下執行遷移。此選項允許從堡壘主機執行，該主機會連線至目標伺服器，其中包含要遷移至 Elastic Beanstalk 的應用程式和組態。從堡壘伺服器執行、`eb migrate`探索組態、在堡壘主機上階段遷移邏輯，然後將您的應用程式部署到新的 Elastic Beanstalk 環境。 此選項不需要在您需要遷移的 Windows 伺服器上安裝 EB CLI 和 Python。您會改為在堡壘主機上安裝 Python 和 EB CLI，在堡壘主機上以 `--remote`選項執行**eb migrate**命令。使用 `--target-ip`選項指定具有要遷移之 IIS 組態的主機。 必須搭配 `--target-ip`、 `--username`和 使用`--password`。  | 
|  `--target-ip` *ip-address*  |  遠端 Windows 機器的公有 IP 地址，其中包含要遷移的 IIS 伺服器。 使用 時為必要`--remote`。只能在使用 時指定`--remote`。  | 
|  `--username` *使用者名稱*  |  存取遠端 Windows 機器的使用者設定檔使用者名稱，其中包含要遷移的 IIS 伺服器。 使用 時為必要`--remote`。只能在使用 時指定`--remote`。  | 
|  `--password` *密碼*  |  存取遠端 Windows 機器的使用者設定檔密碼，其中包含要遷移的 IIS 伺服器。 使用 時為必要`--remote`。只能在使用 時指定`--remote`。  | 
|  `-sr` *role-name* 或 `--service-role` *role-name*  |  Elastic Beanstalk 管理相關服務的 IAM AWS 服務角色。 如果未指定， 會建立具有必要許可的預設服務角色。如需詳細資訊，請參閱[Elastic Beanstalk 服務角色](concepts-roles-service.md)。  僅指定角色名稱，而非完整的 ARN。Elastic Beanstalk 會自動建立完整的 ARN。   | 
|  `-s` *site-names* 或 `--sites` *site-names*  |  要遷移的 IIS 站點逗號分隔清單。如果未指定， 會遷移伺服器上所有可用的網站。 範例：`--sites "Default Web Site,Intranet,API"`  | 
|  `--ssl-certificates` *certificate-arn*【，*certificate-arn* ...】  |  要與 Application Load Balancer 建立關聯的 ACM SSL 憑證 ARNs 逗號分隔清單。 使用 HTTPS 繫結遷移網站時為必要。 範例：`--ssl-certificates arn:aws:acm:region:account:certificate/certificate-id`  | 
|  `-t key1=value1[,key2=value2 ...]` 或 `-﻿-﻿tags key1=value1[,key2=value2 ...]`  |  以逗號分隔的`key=value`配對清單，以標記環境中的新資源：環境、Elastic Beanstalk 應用程式、應用程式版本。 如需詳細資訊，請參閱[標記環境](using-features.tagging.md)。  | 
|  `--verbose`  |  在遷移程序期間顯示詳細資訊。 與**explore**子命令搭配使用時， 會顯示完整的網站組態詳細資訊。  | 
|  `-vpc` *config-file-or-string* 或 `--vpc-config` *config-file-or-string*  |  環境的 VPC 組態，指定為 JSON 檔案路徑或 JSON 字串。 組態必須包含： <pre>{<br />    "id": "vpc-1234567890abcdef0",<br />    "publicip": "true|false",<br />    "elbscheme": "public|private",<br />    "ec2subnets": ["subnet-a1b2c3d4", "subnet-e5f6g7h8"],<br />    "securitygroups": "sg-123456,sg-789012",<br />    "elbsubnets": ["subnet-a1b2c3d4", "subnet-e5f6g7h8"]<br />}</pre> [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/elasticbeanstalk/latest/dg/eb3-migrate.html)  *當您指定 參數時，遷移會忽略來源環境中任何現有的 VPC 設定*`--vpc-config`。 **當您使用此參數時，遷移只會使用您傳入的組態檔案中指定的 VPC 設定。使用此參數會覆寫探索來源執行個體 VPC 組態或使用預設 VPC 的預設行為。   | 
|  [常用選項](eb3-cmd-options.md)  |  | 

## Output
<a name="eb3-migrateoutput"></a>

命令提供整個遷移程序的狀態更新：

1. VPC 組態偵測 （在 EC2 執行個體上執行時）

1. 每個網站的原始碼套件產生進度

1. 環境建立狀態

1. 部署進度

如果成功， 會顯示新環境的詳細資訊，包括：
+ 環境名稱和 ID
+ Application name (應用程式名稱)
+ 區域
+ 平台版本
+ 環境 CNAME

對於遷移期間的問題，請使用 [**eb events**](eb3-events.md)和 [**eb health**](eb3-health.md)命令來取得詳細資訊。

## 範例
<a name="eb3-migrateexamples"></a>

### 基本使用
<a name="eb3-migrateexamples-basic"></a>

在互動式模式中的基本遷移：

```
PS C:\migrations_workspace >  eb migrate
Identifying VPC configuration of this EC2 instance (i-0123456789abcdef0):
  id: vpc-1234567890abcdef0
  publicip: true
  elbscheme: public
  ec2subnets: subnet-123,subnet-456,subnet-789
  securitygroups: sg-123,sg-456
  elbsubnets: subnet-123,subnet-456,subnet-789

Using .\migrations\latest to contain artifacts for this migration run.
Generating source bundle for sites, applications, and virtual directories...
  Default Web Site/ -> .\migrations\latest\upload_target\DefaultWebSite.zip

Creating application version
Creating environment

Environment details for: EBMigratedEnv
  Application name: EBMigratedApp
  Region: us-west-2
  Deployed Version: app-230320_153045
  Environment ID: e-abcdef1234
  Platform: 64bit Windows Server 2019 v2.7.0 running IIS 10.0
  Tier: WebServer-Standard-1.0
  CNAME: ebmigratedenv.us-west-2.elasticbeanstalk.com
  Updated: 2023-03-20 15:30:45
```

使用自訂組態遷移特定網站：

```
PS C:\migrations_workspace >  eb migrate `
    --sites "Default Web Site,InternalAPI" `
    --application-name "CorporateApp" `
    --environment-name "Production" `
    --instance-type "c5.xlarge" `
    --tags "Environment=Production,Team=WebOps" `
    --copy-firewall-config
```

在沒有部署的情況下建立遷移封存：

```
PS C:\migrations_workspace >  eb migrate --archive-only
Using .\migrations\latest to contain artifacts for this migration run.
Generating source bundle for sites, applications, and virtual directories...
  Default Web Site/ -> .\migrations\latest\upload_target\DefaultWebSite.zip

Generated destination archive directory at .\migrations\latest\upload_target
You can execute `eb init` and `eb create` from this directory to deploy to EB.
```

### 進階組態範例
<a name="eb3-migrateexamples-advanced"></a>

使用 JSON 檔案遷移自訂 VPC 組態：

```
PS C:\migrations_workspace >  cat vpc-config.json
{
    "id": "vpc-1234567890abcdef0",
    "publicip": "false",
    "elbscheme": "internal",
    "ec2subnets": [
        "subnet-private1",
        "subnet-private2"
    ],
    "securitygroups": [
        "sg-app",
        "sg-database",
        "sg-monitoring"
    ],
    "elbsubnets": [
        "subnet-private1",
        "subnet-private2"
    ]
}

PS C:\migrations_workspace eb migrate `
    --sites "InternalAPI" `
    --vpc-config vpc-config.json `
    --instance-type "r5.xlarge" `
    --tags "Environment=Internal,Security=High"
```

使用 SSL 憑證和主機標頭遷移網站：

```
PS C:\migrations_workspace >  eb migrate `
    --sites "SecurePortal" `
    --ssl-certificates "arn:aws:acm:region:account:certificate/cert1,arn:aws:acm:region:account:certificate/cert2" `
    --verbose
INFO: Detected HTTPS bindings:
  - www.example.com:443
  - api.example.com:443

INFO: Configuring Application Load Balancer with SSL certificates
INFO: Creating host-based routing rules:
  - www.example.com -> target group 1
  - api.example.com -> target group 2
```

使用 EBS 快照組態進行遷移：fo

```
PS C:\migrations_workspace >  eb migrate `
    --sites "Default Web Site" `
    --ebs-snapshots "snap-1234567890abcdef0" "snap-0987654321fedcba1" `
    --encrypt-ebs-volumes
Using .\migrations\latest to contain artifacts for this migration run.
INFO: Enabling EBS encryption for all new volumes in us-west-2
INFO: Configuring environment with specified EBS snapshots
```

### 安全組態範例
<a name="eb3-migrateexamples-security"></a>

使用複雜的防火牆規則處理網站：

```
PS C:\migrations_workspace >  eb migrate `
    --sites "Default Web Site,ReportingService" `
    --copy-firewall-config `
    --verbose
INFO: Detected the following Windows Firewall rules:
  - Allow Web Traffic (TCP 80, 443)
  - Allow Reporting Traffic (TCP 8081)
INFO: Creating corresponding security group rules
```

使用自訂 IAM 角色進行遷移：

```
PS C:\migrations_workspace >  eb migrate `
    --sites "SecureApp" `
    --instance-profile "CustomInstanceProfile" `
    --service-role "CustomServiceRole"
```

### 遠端執行範例
<a name="eb3-migrateexamples-remote"></a>

從遠端 Windows 伺服器遷移 IIS 應用程式：

```
PS C:\migrations_workspace >  eb migrate `
    --remote `
    --target-ip "192.0.2.10" `
    --username "administrator" `
    --password "YourPassword123" `
    --application-name "RemoteApp" `
    --environment-name "RemoteEnv"
INFO: Establishing SSH connection to remote host 192.0.2.10...
INFO: Connection established
INFO: Discovering IIS sites on remote host...
INFO: Found 2 sites: Default Web Site, API
INFO: Extracting site configurations...
INFO: Generating source bundle for sites, applications, and virtual directories...
  Default Web Site/ -> .\migrations\latest\upload_target\DefaultWebSite.zip
  API/ -> .\migrations\latest\upload_target\API.zip

Creating application version
Creating environment

Environment details for: RemoteEnv
  Application name: RemoteAppstage mi
  Region: us-west-2
  Deployed Version: app-230320_153045
  Environment ID: e-abcdef1234
  Platform: 64bit Windows Server 2019 v2.7.0 running IIS 10.0
  Tier: WebServer-Standard-1.0
  CNAME: remoteenv.us-west-2.elasticbeanstalk.com
  Updated: 2023-03-20 15:30:45
```

具有特定網站選擇的遠端遷移：

```
PS C:\migrations_workspace >  eb migrate `
    --remote `
    --target-ip "192.0.2.10" `
    --username "administrator" `
    --password "YourPassword123" `
    --sites "API" `
    --instance-type "c5.large"
```

# **eb open**
<a name="eb3-open"></a>

## Description
<a name="eb3-opendescription"></a>

在預設瀏覽器開啟您網站的公開 URL。

## 語法
<a name="eb3-opensyntax"></a>

 **eb open** 

 **eb open *environment-name*** 

## 選項
<a name="eb3-openoptions"></a>


****  

|  名稱  |  描述  | 
| --- | --- | 
|  [常用選項](eb3-cmd-options.md)  |  | 

## Output
<a name="eb3-openoutput"></a>

命令 **eb open** 不會產生輸出，而會在瀏覽器視窗開啟應用程式。

# **eb platform**
<a name="eb3-platform"></a>

## Description
<a name="eb3-platformdescription"></a>

本命令支援兩種不同的工作空間：

[平台](#eb3-platform-preconfigured)  
使用此工作空間來管理自訂平台。

[Environment (環境)](#eb3-platform-environment)   
使用此工作空間來選取預設平台，或顯示目前平台的資訊。

Elastic Beanstalk 為 **eb platform** 提供捷徑 **ebp**。

**注意**  
Windows PowerShell 使用 **ebp** 做為命令別名。若您於 Windows PowerShell 執行 EB CLI，請使用此命令的長格式：**eb platform**。

## 在自訂平台使用 eb 平台
<a name="eb3-platform-preconfigured"></a>

列出目前平台的版本，並可讓您管理自訂平台。

### 語法
<a name="eb3-platformpresyntax"></a>

**eb platform create [*version*] [*options*]**

**eb platform delete [*version*] [*options*]**

**eb platform events [*version*] [*options*]**

**eb platform init [*platform*] [*options*]**

**eb platform list [*options*]**

**eb platform logs [*version*] [*options*]**

**eb platform status [*version*] [*options*]**

**eb platform use [*platform*] [*options*]**

### 選項
<a name="eb3-platform-options"></a>


****  

|  名稱  |  描述  | 
| --- | --- | 
|  `create [version] [options]`  | 建立平台的新版本。[進一步了解](#eb3-platform-create)。 | 
|  `delete version [options]`  | 刪除平台版本。[進一步了解](#eb3-platform-delete)。 | 
|  `events [version] [options]`  | 顯示一個平台版本的事件。[進一步了解](#eb3-platform-events)。 | 
|  `init [platform] [options]`  | 初始化平台儲存庫。[進一步了解](#eb3-platform-init)。 | 
|  `list [options]`  | 列出目前平台的版本。[進一步了解](#eb3-platform-list)。 | 
|  `logs [version] [options]`  | 顯示平台版本建置器環境的日誌。[進一步了解](#eb3-platform-logs)。 | 
|  `status [version] [options]`  | 顯示平台版本的狀態。[進一步了解](#eb3-platform-status)。 | 
|  `use [platform] [options]`  | 選取已建立新版本的不同平台。[進一步了解](#eb3-platform-use)。 | 
|  [常用選項](eb3-cmd-options.md)  |  | 

### 常用選項
<a name="eb3-platform-common"></a>

所有 **eb platform** 命令均包含下列常用選項。


****  

|  名稱  |  描述  | 
| --- | --- | 
|  `-h` 或 `--help`  |  顯示協助訊息並退出。  | 
|  `--debug`  |  顯示其他除錯輸出。  | 
|  `--quiet`  |  抑制所有輸出。  | 
|  `-v` 或 `--verbose`  |  顯示其他輸出。  | 
|  `--profile PROFILE`  |  使用您登入資料指定的 *PROFILE*。  | 
|  `-r REGION` 或 `--region REGION`  |  使用區域 *REGION*。  | 
|  `--no-verify-ssl`  |  請勿驗證 AWS SSL 憑證。  | 

### Eb 平台建立
<a name="eb3-platform-create"></a>

建立平台的新版本並回傳其 ARN。若沒有建置器環境在目前區域中執行，本命令會啟動一個建置器環境。*版本* 和遞增選項 (`-M`、`-m` 和 `-p`) 互斥。

#### 選項
<a name="eb3-platform-create-options"></a>


****  

|  名稱  |  描述  | 
| --- | --- | 
|  *version*  |  若未指定 *版本*，會依據最近的平台建立新版本，且修補程式版本 (n.n.N 中的 N) 會遞增。  | 
|  `-M` 或 `--major-increment`  | 增加主要版本編號 (N.n.n 中的 N)。 | 
|  `-m` 或 `--minor-increment`  | 增加次要版本編號 (n.N.n 中的 N)。 | 
|  `-p` 或 `--patch-increment`  | 增加修補程式版本編號 (n.n.N 中的 N)。 | 
|  `-i INSTANCE_TYPE` 或 --instance-type *INSTANCE\$1TYPE*  | 將 *INSTANCE\$1TYPE* 做為執行個體類型 (如 **t1.micro**)。 | 
|  `-ip INSTANCE_PROFILE` 或 `--instance-profile INSTANCE_PROFILE`  | 在建立自訂平台的 AMI 時將 *INSTANCE\$1PROFILE* 做為執行個體描述檔。 若不指定 `-ip` 選項，會建立執行個體描述檔 `aws-elasticbeanstalk-custom-platforme-ec2-role` 並將其用於自訂平台。 | 
|  `-﻿-﻿tags key1=value1[,key2=value2 ...]`  |  指定標籤的格式為以逗號分隔的 `key=value` 對清單。  | 
|  `--timeout` *分鐘*  |  設定命令逾時前的分鐘數。  | 
|  `--vpc.id VPC_ID`  | 在其中建立 Packer 的 VPC ID。 | 
|  `--vpc.subnets VPC_SUBNETS`  | 在其中建立 Packer 的 VPC 子網路。 | 
|  `--vpc.publicip`  | 將公有 IP 與啟動的 EC2 執行個體建立關聯。 | 

### Eb 平台刪除
<a name="eb3-platform-delete"></a>

刪除平台版本。若環境正在使用該版本，將不會刪除。

#### 選項
<a name="eb3-platform-delete-options"></a>


****  

|  名稱  |  描述  | 
| --- | --- | 
|  `version`  | 欲刪除的版本。此值為必填。 | 
|  `--cleanup`  |  移除所有處於 `Failed` 狀態的平台版本。  | 
|  `--all-platforms`  |  若指定為 `--cleanup`，會移除所有平台處於 `Failed` 狀態的平台版本。  | 
|  `--force`  |  刪除版本時不需要進行確認。  | 

### Eb 平台事件
<a name="eb3-platform-events"></a>

顯示一個平台版本的事件。若已指定*版本*，會顯示該版本的事件，否則會顯示目前版本的事件。

#### 選項
<a name="eb3-platform-events-options"></a>


****  

|  名稱  |  描述  | 
| --- | --- | 
|  *version* | 欲顯示事件的版本。此值為必填。 | 
|  `-f` 或 `--follow`  | 在事件發生時持續顯示。 | 

### Eb 平台 init
<a name="eb3-platform-init"></a>

初始化平台儲存庫。

#### 選項
<a name="eb3-platform-init-options"></a>


****  

|  名稱  |  描述  | 
| --- | --- | 
|  `platform`  | 欲初始化的平台名稱。此值為必填，除非啟用 `-i` (互動式模式)。 | 
|  `-i` 或 `--interactive`  |  使用互動式模式。  | 
|  `-k KEYNAME` 或 `--keyname KEYNAME`  |  預設 EC2 金鑰名稱。  | 

您可於之前已初始化的目錄執行本命令，但是將無法變更工作空間類型。

欲使用不同選項重新初始化，請使用 `-i` 選項。

### Eb 平台清單
<a name="eb3-platform-list"></a>

列出與工作空間 (目錄) 或區域關聯的平台版本。

根據您所執行的工作空間類型，命令會傳回不同結果，如下所示：
+ 在平台工作空間 (由 `eb platform init` 進行目錄初始化)，命令傳回工作空間所定義之自訂平台的所有平台版本清單。新增 `--all-platforms` 或 `--verbose` 選項，取得與工作空間關聯的區域中，您帳戶所擁有的所有自訂平台的平台版本清單。
+ 在應用程式工作空間 (由 `eb init` 進行目錄初始化)，命令傳回所有平台版本，包括 Elastic Beanstalk 受管的平台以及您帳戶的自訂平台。此清單使用較短的平台版本名稱，且部分平台版本變化可能會合併。新增 `--verbose` 選項以取得詳細清單，其中包含完整名稱並分別列出所有變化。
+ 在未初始化目錄，命令只可搭配 `--region` 選項。這會傳回此區域所支援的所有 Elastic Beanstalk 受管平台版本的清單。此清單使用較短的平台版本名稱，且部分平台版本變化可能會合併。新增 `--verbose` 選項以取得詳細清單，其中包含完整名稱並分別列出所有變化。

#### 選項
<a name="eb3-platform-list-options"></a>


****  

|  名稱  |  描述  | 
| --- | --- | 
|  `-a` 或 `--all-platforms`  |  僅在初始化工作空間為有效 (由 `eb platform init` 或 `eb init` 進行目錄初始化)。列出與您帳戶關聯的所有自訂平台的版本清單。 | 
|  `-s STATUS` 或 `--status STATUS`  |  僅列出 *STATUS* 相符的平台： [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/elasticbeanstalk/latest/dg/eb3-platform.html)  | 

### Eb 平台日誌
<a name="eb3-platform-logs"></a>

顯示平台版本建置器環境的日誌。

#### 選項
<a name="eb3-platform-logs-options"></a>


****  

|  名稱  |  描述  | 
| --- | --- | 
|  `version`  |  欲顯示記錄的平台版本。若省略，則會顯示目前版本的日誌。  | 
|  `--stream`  | 串流透過 CloudWatch 設定的部署日誌。 | 

### Eb 平台狀態
<a name="eb3-platform-status"></a>

顯示平台版本的狀態。

#### 選項
<a name="eb3-platform-status-options"></a>


****  

|  名稱  |  描述  | 
| --- | --- | 
|  `version`  | 欲擷取狀態的平台版本。若省略，則會顯示目前版本的狀態。 | 

### Eb 平台使用
<a name="eb3-platform-use"></a>

選取已建立新版本的不同平台。

#### 選項
<a name="eb3-platform-use-options"></a>


****  

|  名稱  |  描述  | 
| --- | --- | 
|  `platform`  | 將 *平台* 指定為本工作空間的使用中版本。此值為必填。 | 

## 將 eb platform 用於環境
<a name="eb3-platform-environment"></a>

列出支援平台，並讓您設定啟動環境時所用的預設平台和平台版本。使用 **eb platform list** 來檢視所有支援平台的清單。使用 **eb platform select** 來變更您專案的平台。使用 **eb platform show** 來檢視您專案所選的平台。

### 語法
<a name="eb3-platformenvsyntax"></a>

**eb platform list**

**eb platform select**

**eb platform show**

### 選項
<a name="eb3-platformenvoptions"></a>


****  

|  名稱  |  描述  | 
| --- | --- | 
|  `list`  | 列出目前平台的版本。 | 
|  `select`  | 選取預設平台。 | 
|  `show`  | 顯示目前平台的資訊。 | 

### 範例 1
<a name="eb3-platformenvexample1"></a>

下列範例列出 Elastic Beanstalk 支援的平台所有組態名稱。

```
$ eb platform list
docker-1.5.0
glassfish-4.0-java-7-(preconfigured-docker)
glassfish-4.1-java-8-(preconfigured-docker)
go-1.3-(preconfigured-docker)
go-1.4-(preconfigured-docker)
iis-7.5
iis-8
iis-8.5
multi-container-docker-1.3.3-(generic)
node.js
php-5.3
php-5.4
php-5.5
python
python-2.7
python-3.4
python-3.4-(preconfigured-docker)
ruby-1.9.3
ruby-2.0-(passenger-standalone)
ruby-2.0-(puma)
ruby-2.1-(passenger-standalone)
ruby-2.1-(puma)
ruby-2.2-(passenger-standalone)
ruby-2.2-(puma)
tomcat-6
tomcat-7
tomcat-7-java-6
tomcat-7-java-7
tomcat-8-java-8
```

### 範例 2
<a name="eb3-platformenvexample2"></a>

下列範例會提示您為指定平台選擇欲部署的平台和版本清單。

```
$ eb platform select
Select a platform.
1) PHP
2) Node.js
3) IIS
4) Tomcat
5) Python
6) Ruby
7) Docker
8) Multi-container Docker
9) GlassFish
10) Go
(default is 1): 5

Select a platform version.
1) Python 2.7
2) Python
3) Python 3.4 (Preconfigured - Docker)
```

### 範例 3
<a name="eb3-platformenvexample3"></a>

下列範例會顯示目前預設平台的資訊。

```
$ eb platform show
Current default platform: Python 2.7
New environments will be running:  64bit Amazon Linux 2014.09 v1.2.0 running Python 2.7

Platform info for environment "tmp-dev":
Current: 64bit Amazon Linux 2014.09 v1.2.0 running Python
Latest:  64bit Amazon Linux 2014.09 v1.2.0 running Python
```

# **eb printenv**
<a name="eb3-printenv"></a>

## Description
<a name="eb3-printenvdescription"></a>

於命令視窗列印所有環境屬性。

## 語法
<a name="eb3-printenvsyntax"></a>

 **eb printenv** 

 **eb printenv *environment-name*** 

## 選項
<a name="eb3-printenvoptions"></a>


****  

|  名稱  |  描述  | 
| --- | --- | 
|  [常用選項](eb3-cmd-options.md)  |  | 

## Output
<a name="eb3-printenvoutput"></a>

若成功，本命令會回傳 `printenv` 操作的狀態。

## 範例
<a name="eb3-printenvexample"></a>

下列範例列印指定環境的環境屬性。

```
$ eb printenv
Environment Variables:
     PARAM1 = Value1
```

# **eb restore**
<a name="eb3-restore"></a>

## Description
<a name="eb3-restoredescription"></a>

重建已終止環境，建立具備相同名稱、ID 和組態的新環境。環境名稱、網域名稱和應用程式版本必須能夠使用才能重建成功。

## 語法
<a name="eb3-restoresyntax"></a>

 **eb restore** 

 **eb restore *environment\$1id*** 

## 選項
<a name="eb3-restoreoptions"></a>


****  

|  名稱  |  描述  | 
| --- | --- | 
|  [常用選項](eb3-cmd-options.md)  |  | 

## Output
<a name="eb3-restoreoutput"></a>

EB CLI 顯示可還原的已終止環境清單。

## 範例
<a name="eb3-restoreexample"></a>

```
$ eb restore
Select a terminated environment to restore

  #   Name          ID             Application Version      Date Terminated        Ago

  3   gamma         e-s7mimej8e9   app-77e3-161213_211138   2016/12/14 20:32 PST   13 mins
  2   beta          e-sj28uu2wia   app-77e3-161213_211125   2016/12/14 20:32 PST   13 mins
  1   alpha         e-gia8mphu6q   app-77e3-161213_211109   2016/12/14 16:21 PST   4 hours

 (Commands: Quit, Restore, ▼ ▲)

Selected environment alpha
Application:    scorekeep
Description:    Environment created from the EB CLI using "eb create"
CNAME:          alpha.h23tbtbm92.us-east-2.elasticbeanstalk.com
Version:        app-77e3-161213_211109
Platform:       64bit Amazon Linux 2016.03 v2.1.6 running Java 8
Terminated:     2016/12/14 16:21 PST
Restore this environment? [y/n]: y

2018-07-11 21:04:20    INFO: restoreEnvironment is starting.
2018-07-11 21:04:39    INFO: Created security group named: sg-e2443f72
...
```

# **eb scale**
<a name="eb3-scale"></a>

## Description
<a name="eb3-scaledescription"></a>

設定執行個體數量的上下限，將環境擴展以永遠於特定數量的執行個體上執行。

## 語法
<a name="eb3-scalesyntax"></a>

 **eb scale *number-of-instances*** 

 **eb scale *number-of-instances* *environment-name*** 

## 選項
<a name="eb3-scaleoptions"></a>


****  

|  名稱  |  描述  | 
| --- | --- | 
|  --timeout  |  命令逾時前的分鐘數。  | 
|  [常用選項](eb3-cmd-options.md)  |  | 

## Output
<a name="eb3-scaleoutput"></a>

若成功，本命令會將執行個體數量的上下限更新為特定數量。

## 範例
<a name="eb3-scaleexample"></a>

下列範例將執行個體數量設定為 2。

```
$ eb scale 2
2018-07-11 21:05:22    INFO: Environment update is starting.
2018-07-11 21:05:27    INFO: Updating environment tmp-dev's configuration settings.
2018-07-11 21:08:53    INFO: Added EC2 instance 'i-5fce3d53' to Auto Scaling Group 'awseb-e-2cpfjbra9a-stack-AWSEBAutoScalingGroup-7AXY7U13ZQ6E'.
2018-07-11 21:08:58    INFO: Successfully deployed new configuration to environment.
2018-07-11 21:08:59    INFO: Environment update completed successfully.
```

# **eb setenv**
<a name="eb3-setenv"></a>

## Description
<a name="eb3-setenv-description"></a>

設定預設環境的[環境屬性](environments-cfg-softwaresettings.md)。

## 語法
<a name="eb3-setenv-syntax"></a>

**eb setenv *key*=*value*** 

您可依需求納入任意數量的屬性，但所有屬性的總大小不能超過 4096 個位元組。您可將值保留空白，藉此刪除變數。請參閱 [設定環境屬性 (環境變數)](environments-cfg-softwaresettings.md#environments-cfg-softwaresettings-console) 了解限制。

**注意**  
若 `value` 包含[特殊字元](http://tldp.org/LDP/abs/html/special-chars.html)，務必在前方加上 `\` 字元來加以逸出。

## 選項
<a name="eb3-setenvoptions"></a>


****  

|  名稱  |  描述  | 
| --- | --- | 
|  --timeout  |  命令逾時前的分鐘數。  | 
|  [常用選項](eb3-cmd-options.md)  |  | 

## Output
<a name="eb3-setenv-output"></a>

若成功，本命令會顯示環境更新成功。

## 範例
<a name="eb3-setenv-example"></a>

下列範例設定環境變數 ExampleVar。

```
$ eb setenv ExampleVar=ExampleValue
2018-07-11 21:05:25    INFO: Environment update is starting.
2018-07-11 21:05:29    INFO: Updating environment tmp-dev's configuration settings.
2018-07-11 21:06:50    INFO: Successfully deployed new configuration to environment.
2018-07-11 21:06:51    INFO: Environment update completed successfully.
```

下列命令設定多個環境屬性。其會新增名為 `foo` 的環境屬性並將該值設定為 `bar`，變更 `JDBC_CONNECTION_STRING` 屬性的值，並刪除 `PARAM4` 和 `PARAM5` 屬性。

```
$ eb setenv foo=bar JDBC_CONNECTION_STRING=hello PARAM4= PARAM5=
```

# **eb ssh**
<a name="eb3-ssh"></a>

## Description
<a name="eb3-sshdescription"></a>

**注意**  
本命令不適用執行 Windows Server 執行個體的環境。

使用安全殼層 (SSH) 連接至環境中的 Linux Amazon EC2 執行個體。若環境具有多個運作中的執行個體，EB CLI 會提示您指定欲連接的執行個體。若要使用此命令，SSH 必須安裝於本機機器，並可從命令列使用。私有金鑰檔案必須位於使用者目錄底下名為 `.ssh` 的資料夾，而環境中的 EC2 執行個體必須具備公有 IP 地址。

若根目錄包含指定自訂平台的 `platform.yaml` 檔案，則此命令也會連接至自訂環境內的執行個體。

 

**SSH 金鑰**  
若您尚未設定 SSH，可使用 EB CLI 在執行 **eb init** 時建立金鑰。若您已執行 **eb init**，請搭配 `--interactive` 選項再執行一次，然後在提示設定 SSH 時，選取 **Yes (是)** 及 **Create New Keypair (建立新的金鑰對)**。在此程序建立的金鑰，將由 EB CLI 存放在適當的資料夾。

本命令暫時開啟您環境安全群組的連接埠 22 供來自 0.0.0.0/0 (所有 IP 地址) 傳入的流量使用 (若尚未針對連接埠 22 設定規則)。若您已將環境安全群組的連接埠 22，設定為向受限 CIDR 範圍開啟以提升安全性，EB CLI 會採用該設定並放棄對該安全群組的任何變更。欲覆寫此行為並要求 EB CLI 開啟連接埠 22 接收所有傳入流量，請使用 `--force` 選項。

如需設定您環境安全群組的資訊，請參閱 [EC2 安全群組](using-features.managing.ec2.console.md#using-features.managing.ec2.securitygroups)。

## 語法
<a name="eb3-sshsyntax"></a>

 **eb ssh** 

 **eb ssh *environment-name*** 

## 選項
<a name="eb3-sshoptions"></a>


****  

|  名稱  |  描述  | 
| --- | --- | 
|  `-i` 或 `--instance`  |  指定欲連接之執行個體的執行個體 ID。建議您使用此選項。  | 
|  `-n` 或 `--number`  |  按編號指定欲連接的執行個體。  | 
|  `-o` 或 `--keep_open`  |  在 SSH 工作階段結束後，將安全群組的連接埠 22 保持開啟。  | 
|  `--command`  |  針對特定執行個體執行 shell 命令，而非啟動 SSH 工作階段。  | 
|  `--custom`  |  指定欲使用的 SSH 命令，而非「ssh -i keyfile」。請勿納入遠端使用者和主機名稱。  | 
|  `--setup`  |  變更指派至環境執行個體的金鑰對 (需要替換執行個體)。  | 
|  `--force`  |  針對環境安全群組的連接埠 22，開啟來自 0.0.0.0/0 的傳入流量，不論安全群組是否已設定 SSH。 若您已將環境安全群組的連接埠 22 設定為向受限 CIDR 範圍開啟，其中未包含您正嘗試發送連接的 IP 地址，請使用此選項。  | 
|  `--timeout` *分鐘*  |  設定命令逾時前的分鐘數。 僅可搭配 `--setup` 引數來使用。  | 
|  [常用選項](eb3-cmd-options.md)  |  | 

## Output
<a name="eb3-sshoutput"></a>

若成功，本命令會開啟 SSH 連線至執行個體。

## 範例
<a name="eb3-sshexample"></a>

下列範例會將您連接至指定的環境。

```
$ eb ssh
Select an instance to ssh into
1) i-96133799
2) i-5931e053
(default is 1): 1
INFO: Attempting to open port 22.
INFO: SSH port 22 open.
The authenticity of host '54.191.45.125 (54.191.45.125)' can't be established.
RSA key fingerprint is ee:69:62:df:90:f7:63:af:52:7c:80:60:1b:3b:51:a9.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '54.191.45.125' (RSA) to the list of known hosts.

       __|  __|_  )
       _|  (     /   Amazon Linux AMI
      ___|\___|___|

https://aws.amazon.com/amazon-linux-ami/2014.09-release-notes/
No packages needed for security; 1 packages available
Run "sudo yum update" to apply all updates.
[ec2-user@ip-172-31-8-185 ~]$ ls
[ec2-user@ip-172-31-8-185 ~]$ exit
logout
Connection to 54.191.45.125 closed.
INFO: Closed port 22 on ec2 instance security group
```

# **eb status**
<a name="eb3-status"></a>

## Description
<a name="eb3-status-description"></a>

提供關於環境狀態的資訊。

如果根目錄包含 `platform.yaml` 檔案，其中指定自訂的平台，則此指令也會提供關於建置器環境的資訊。

## 語法
<a name="eb3-status-syntax"></a>

 **eb status** 

 **eb status *environment-name*** 

## 選項
<a name="eb3-statusoptions"></a>


****  

|  名稱  |  描述  | 
| --- | --- | 
|  `-v` 或 `--verbose`  |  提供更多關於個別執行個體的資訊，例如這些執行個體與 Elastic Load Balancing 負載平衡器的狀態。  | 
|  [常用選項](eb3-cmd-options.md)  |  | 

## Output
<a name="eb3-statusoutput"></a>

如果成功的話，指令會傳回下列關於環境的資訊：
+ 環境名稱
+ 應用程式名稱
+ 部署應用程式版本
+ 環境 ID
+ 平台
+ 環境層
+ CNAME
+ 環境上次更新的時間
+ 狀態
+ 運作狀態

如果您使用 verbose 模式，則 EB CLI 也會提供執行中 Amazon EC2 執行個體的數目。

## 範例
<a name="eb3-statusexample"></a>

下列範例會顯示環境 tmp-dev 的狀態。

```
$ eb status
Environment details for: tmp-dev
  Application name: tmp
  Region: us-west-2
  Deployed Version: None
  Environment ID: e-2cpfjbra9a
  Platform: 64bit Amazon Linux 2014.09 v1.0.9 running PHP 5.5
  Tier: WebServer-Standard-1.0
  CNAME: tmp-dev.elasticbeanstalk.com
  Updated: 2014-10-29 21:37:19.050000+00:00
  Status: Launching
  Health: Grey
```

# **eb swap**
<a name="eb3-swap"></a>

## Description
<a name="eb3-swapdescription"></a>

將某環境的 CNAME 與另一個環境的 CNAME 交換 (例如，為了在更新應用程式版本時避免停機時間)。

**注意**  
如果您有兩個以上的環境，系統會提示您，請您從環境清單中，針對目前正在使用您所要 CNAME 的環境，選取該環境的名稱。若不要讓此提示出現，您可以藉由在執行指令時加入 `-n` 選項，來指定所要使用的環境的名稱。

## 語法
<a name="eb3-swapsyntax"></a>

 **eb swap** 

 **eb swap *environment-name*** 

**注意**  
*environment-name* 是您希望具有不同 CNAME 的環境。如果您不在執行 **eb swap** 時，指定 *environment-name* 做為命令列的參數，則 EB CLI 會更新預設環境的 CNAME。

## 選項
<a name="eb3-swapoptions"></a>


****  

|  名稱  |  描述  | 
| --- | --- | 
|  `-n` 或 `--destination_name`  |  指定您想要交換其 CNAME 的環境的名稱。如果您未在執行 **eb swap** 時包含此選項，則 EB CLI 會提示您從環境清單中選擇。  | 
|  [常用選項](eb3-cmd-options.md)  |  | 

## Output
<a name="eb3-swapoutput"></a>

若成功，本命令會回傳 `swap` 操作的狀態。

## 範例
<a name="eb3-swapexample"></a>

下列範例會將環境 tmp-dev 與 live-env 交換。

```
$ eb swap
Select an environment to swap with.
1) staging-dev
2) live-env
(default is 1): 2
2018-07-11 21:05:25    INFO: swapEnvironmentCNAMEs is starting.
2018-07-11 21:05:26    INFO: Swapping CNAMEs for environments 'tmp-dev' and 'live-env'.
2018-07-11 21:05:30    INFO: 'tmp-dev.elasticbeanstalk.com' now points to 'awseb-e-j-AWSEBLoa-M7U21VXNLWHN-487871449.us-west-2.elb.amazonaws.com'.
2018-07-11 21:05:30    INFO: Completed swapping CNAMEs for environments 'tmp-dev' and 'live-env'.
```

下列的範例會將環境 tmp-dev 與環境 live-env 交換，但並未提示您針對任何設定來輸入或選擇值。

```
$ eb swap tmp-dev --destination_name live-env
2018-07-11 21:18:12    INFO: swapEnvironmentCNAMEs is starting.
2018-07-11 21:18:13    INFO: Swapping CNAMEs for environments 'tmp-dev' and 'live-env'.
2018-07-11 21:18:17    INFO: 'tmp-dev.elasticbeanstalk.com' now points to 'awseb-e-j-AWSEBLoa-M7U21VXNLWHN-487871449.us-west-2.elb.amazonaws.com'.
2018-07-11 21:18:17    INFO: Completed swapping CNAMEs for environments 'tmp-dev' and 'live-env'.
```

# **eb tags**
<a name="eb3-tags"></a>

## Description
<a name="eb3-tagsdescription"></a>

新增、刪除、更新和列出 Elastic Beanstalk 資源的標籤。

如需 Elastic Beanstalk 中資源標記的詳細資訊，請參閱[標記 Elastic Beanstalk 應用程式資源](applications-tagging-resources.md)。

## 語法
<a name="eb3-tagsyntax"></a>

**eb tags [*environment-name*] [--resource *ARN*] -l \$1 --list**

**eb tags [*environment-name*] [--resource *ARN*] -a \$1 --add *key1*=*value1*[,*key2*=*value2* ...]**

**eb tags [*environment-name*] [--resource *ARN*] -u \$1 --update *key1*=*value1*[,*key2*=*value2* ...]**

**eb tags [*environment-name*] [--resource *ARN*] -d \$1 --delete *key1*[,*key2* ...]**

您可將 `--add`、`--update` 和 `--delete` 子命令選項結合為單一命令，至少需要其中一個選項。這三個子命令選項的任何一個均無法與 `--list` 結合使用。

如果沒有任何額外的引數，所有這些命令會列出或修改目前目錄的應用程式中預設環境的標籤。使用 *environment-name* 引數，此命令會列出或修改該環境的標籤。使用 `--resource` 選項，此命令會列出或修改任何 Elastic Beanstalk 資源 - 應用程式、環境、應用程式版本、已儲存的組態，或自訂平台版本的標籤。透過其 Amazon Resource Name (ARN) 指定資源。

## 選項
<a name="eb3-tagsoptions"></a>

這些選項均非必要。若您不帶任何選項執行 **eb create**，將提示您輸入或選取每個設定的值。


****  

|  名稱  |  描述  | 
| --- | --- | 
|  `-l` 或 `--list`  |  列出目前套用至資源的所有標籤。  | 
|  `-﻿a key1=value1[,key2=value2 ...]` 或 `-﻿-﻿add key1=value1[,key2=value2 ...]`  |  將新標籤套用至資源。將標籤指定為以逗號分隔的 `key=value` 對清單。您無法指定現有標籤的金鑰。 有效值：請參閱 [標記資源](applications-tagging-resources.md)。  | 
|  `-﻿u key1=value1[,key2=value2 ...]` 或 `-﻿-﻿update key1=value1[,key2=value2 ...]`  |  更新現有資源標籤的值。將標籤指定為以逗號分隔的 `key=value` 對清單。您必須指定現有標籤的金鑰。 有效值：請參閱 [標記資源](applications-tagging-resources.md)。  | 
|  `-﻿d key1[,key2 ...]` 或 `-﻿-﻿delete key1[,key2 ...]`  |  刪除現有的資源標籤。將標籤指定為以逗號分隔的金鑰清單。您必須指定現有標籤的金鑰。 有效值：請參閱 [標記資源](applications-tagging-resources.md)。  | 
|  `-r` *區域* 或 `--region` *區域*  |  資源 AWS 區域 所在的 。 預設值：設定的預設區域。 如需可以為此選項指定的值之清單，請參閱《*AWS 一般參考*》中的[AWS Elastic Beanstalk 端點與配額](https://docs.aws.amazon.com/general/latest/gr/elasticbeanstalk.html)。  | 
|  `-﻿-﻿resource ARN`  |  命令修改或列出標籤之資源的 ARN。如果未指定，此命令是指目錄中的應用程式的 (預設或指定) 環境。 有效值：請參閱 [標記資源](applications-tagging-resources.md) 中您感興趣的特定資源的其中一個子主題。這些主題會說明資源的 ARN 的建構方式，並說明如何取得存在可供您的應用程式或帳戶使用的此資源 ARN 的清單。  | 

## Output
<a name="eb3-tagsoutput"></a>

`--list` 子命令選項會顯示資源標籤清單。輸出會顯示 Elastic Beanstalk 預設套用的標籤和自訂標籤。

```
$ eb tags --list
Showing tags for environment 'MyApp-env':

Key                                 Value

Name                                MyApp-env
elasticbeanstalk:environment-id     e-63cmxwjaut
elasticbeanstalk:environment-name   MyApp-env
mytag                               tagvalue
tag2                                2nd value
```

`--add`、`--update` 和 `--delete` 子命令選項成功執行時，不會有任何輸出。您可以新增 `--verbose` 選項，以查看命令活動的詳細輸出。

```
$ eb tags --verbose --update "mytag=tag value"
Updated Tags:

Key                                 Value

mytag                               tag value
```

## 範例
<a name="eb3-tagsexamples"></a>

以下命令會成功將具有索引鍵 `tag1` 和值 `value1` 的標籤新增到應用程式的預設環境，並同時刪除標籤 `tag2`。

```
$ eb tags --add tag1=value1 --delete tag2
```

以下命令會成功新增標籤到應用程式內已儲存的組態。

```
$ eb tags --add tag1=value1 \
      --resource "arn:aws:elasticbeanstalk:us-east-2:my-account-id:configurationtemplate/my-app/my-template"
```

下列命令失敗，因其嘗試更新不存在的標籤。

```
$ eb tags --update tag3=newval
ERROR: Tags with the following keys can't be updated because they don't exist:

  tag3
```

下列命令失敗，因其嘗試更新並刪除相同金鑰。

```
$ eb tags --update mytag=newval --delete mytag
ERROR: A tag with the key 'mytag' is specified for both '--delete' and '--update'. Each tag can be either deleted or updated in a single operation.
```

# **eb terminate**
<a name="eb3-terminate"></a>

## Description
<a name="eb3-terminatedescription"></a>

終止執行中的環境，這樣您就不會因為未使用的 AWS 資源而產生費用。

使用 `--all` 選項來透過 [**eb init**](eb3-init.md) 刪除目前目錄初始化的應用程式。此命令會終止在應用程式中的所有環境。此命令也會終止應用程式的[應用程式版本](applications-versions.md)以及[已儲存的組態](environment-configuration-savedconfig.md)，然後刪除應用程式。

若根目錄包含指定自訂平台的 `platform.yaml` 檔案，則此命令會終止執行中的自訂環境。

**注意**  
您稍後可隨時運用相同版本啟動新的環境。

如果您希望保留環境中的資料，請在終止環境之前，將資料庫刪除政策設定為 `Retain`。這可使資料庫在 Elastic Beanstalk 之外運作。在這項操作之後，任何 Elastic Beanstalk 環境都必須以外部資料庫的形式連接它。如果您想要在不保持資料庫運作的情況下備份資料，請將刪除政策設定為在終止環境之前建立資料庫的快照。如需詳細資訊，請參閱本指南的「設定環境」**一章中的 [資料庫生命週期](using-features.managing.db.md#environments-cfg-rds-lifecycle)。

**重要**  
如果您終止環境，您也必須刪除您建立的任何 CNAME 映射，因為其他客戶可能重複使用可用的主機名稱。請務必刪除指向終止環境的 DNS 記錄，以防止*懸置 DNS 項目*。懸置的 DNS 項目可能會降低您網域的網際網路流量的安全性，使其暴露在易於攻擊的弱點中。另外，它還可能存在其他風險。  
如需詳細資訊，請參閱 *Amazon Route 53 開發人員指南*中的[在 Route 53 上防止懸置委派記錄](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/protection-from-dangling-dns.html)。您也可以在*AWS 安全部落格*中針對[適用於 Amazon CloudFront 請求的強化網域保護](https://aws.amazon.com/blogs/security/enhanced-domain-protections-for-amazon-cloudfront-requests/)來進一步了解懸置 DNS 項目的資訊。

## 語法
<a name="eb3-terminatesyntax"></a>

 **eb terminate** 

 **eb terminate *environment-name*** 

## 選項
<a name="eb3-terminateoptions"></a>


****  

|  名稱  |  描述  | 
| --- | --- | 
|  `--all`  |  終止應用程式中所有環境、應用程式的[應用程式版本](applications-versions.md)以及[已儲存的組態](environment-configuration-savedconfig.md)，然後刪除應用程式。  | 
|  `--force`  |  不經提示確認即終止環境。  | 
|  `--ignore-links`  |  即使某環境具備與其連結的相依環境仍將其終止。請參閱[編寫環境](ebcli-compose.md)。  | 
|  `--timeout`  |  命令逾時前的分鐘數。  | 

## Output
<a name="eb3-terminateoutput"></a>

若成功，本命令會回傳 `terminate` 操作的狀態。

## 範例
<a name="eb3-terminateexample"></a>

下列範例請求會終止環境 tmp-dev。

```
$ eb terminate
The environment "tmp-dev" and all associated instances will be terminated.
To confirm, type the environment name: tmp-dev
2018-07-11 21:05:25    INFO: terminateEnvironment is starting.
2018-07-11 21:05:40    INFO: Deleted CloudWatch alarm named: awseb-e-2cpfjbra9a-stack-AWSEBCloudwatchAlarmHigh-16V08YOF2KQ7U
2018-07-11 21:05:41    INFO: Deleted CloudWatch alarm named: awseb-e-2cpfjbra9a-stack-AWSEBCloudwatchAlarmLow-6ZAWH9F20P7C
2018-07-11 21:06:42    INFO: Deleted Auto Scaling group policy named: arn:aws:autoscaling:us-east-2:11122223333:scalingPolicy:5d7d3e6b-d59b-47c5-b102-3e11fe3047be:autoScalingGroupName/awseb-e-2cpfjbra9a-stack-AWSEBAutoScalingGroup-7AXY7U13ZQ6E:policyName/awseb-e-2cpfjbra9a-stack-AWSEBAutoSca
lingScaleUpPolicy-1876U27JEC34J
2018-07-11 21:06:43    INFO: Deleted Auto Scaling group policy named: arn:aws:autoscaling:us-east-2:11122223333:scalingPolicy:29c6e7c7-7ac8-46fc-91f5-cfabb65b985b:autoScalingGroupName/awseb-e-2cpfjbra9a-stack-AWSEBAutoScalingGroup-7AXY7U13ZQ6E:policyName/awseb-e-2cpfjbra9a-stack-AWSEBAutoSca
lingScaleDownPolicy-SL4LHODMOMU
2018-07-11 21:06:48    INFO: Waiting for EC2 instances to terminate. This may take a few minutes.
2018-07-11 21:08:55    INFO: Deleted Auto Scaling group named: awseb-e-2cpfjbra9a-stack-AWSEBAutoScalingGroup-7AXY7U13ZQ6E
2018-07-11 21:09:10    INFO: Deleted security group named: awseb-e-2cpfjbra9a-stack-AWSEBSecurityGroup-XT4YYGFL7I99
2018-07-11 21:09:40    INFO: Deleted load balancer named: awseb-e-2-AWSEBLoa-AK6RRYFQVV3S
2018-07-11 21:09:42    INFO: Deleting SNS topic for environment tmp-dev.
2018-07-11 21:09:52    INFO: terminateEnvironment completed successfully.
```

# **eb upgrade**
<a name="eb3-upgrade"></a>

## Description
<a name="eb3-upgradedescription"></a>

將您環境的平台升級至現正執行環境的平台之最新版本。

若根目錄包含指定自訂平台的 `platform.yaml` 檔案，此命令會將環境升級至現正執行環境的自訂平台之最新版本。

## 語法
<a name="eb3-upgradesyntax"></a>

 **eb upgrade** 

 **eb upgrade *environment-name*** 

## 選項
<a name="eb3-upgradeoptions"></a>


****  

|  名稱  |  描述  | 
| --- | --- | 
|  `--force`  |  升級程序前您無須確認環境名稱，即可進行升級。  | 
|  `--noroll`  |  更新所有執行個體，無須透過滾動更新即可於升級期間保留部分執行個體的服務。  | 
|  [常用選項](eb3-cmd-options.md)  |  | 

## Output
<a name="eb3-upgradeoutput"></a>

本命令會顯示變更的概觀，並提示您輸入環境名稱以確認升級。若成功，您的環境會進行更新，並以最新的平台版本啟動。

## 範例
<a name="eb3-upgradeexample"></a>

下列範例將指定環境目前的平台版本升級至最新的平台版本。

```
$ eb upgrade
Current platform: 64bit Amazon Linux 2014.09 v1.0.9 running Python 2.7
Latest platform:  64bit Amazon Linux 2014.09 v1.2.0 running Python 2.7

WARNING: This operation replaces your instances with minimal or zero downtime. You may cancel the upgrade after it has started by typing "eb abort".
You can also change your platform version by typing "eb clone" and then "eb swap".

To continue, type the environment name:
```

# **eb use**
<a name="eb3-use"></a>

## Description
<a name="eb3-usedescription"></a>

將指定環境設定為預設環境。

使用 Git 時，**eb use** 會設定目前分支的預設環境。在您欲將其部署至 Elastic Beanstalk 的各個分支中，執行此命令一次。

## 語法
<a name="eb3-usesyntax"></a>

 **eb use *environment-name*** 

## 選項
<a name="eb3-useoptions"></a>


****  

|  名稱  |  描述  | 
| --- | --- | 
|  `--source codecommit/repository-name/branch-name`  |  CodeCommit 儲存庫和分支。  | 
|  `-r region` `--region region`  |  變更您建立環境的區域。  | 
|  [常用選項](eb3-cmd-options.md)  |  | 