

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

# 建立受管託管的Amazon GameLift Servers建置資源
<a name="gamelift-build-cli-uploading-builds"></a>

在建立建置並上傳檔案時，您有幾個選項：
+ [從檔案目錄建立組建](gamelift-build-cli-uploading-upload-build.md)。 這是最簡單且最常用的選項。
+ [使用 Amazon Simple Storage Service (Amazon S3) 中的檔案建立組](gamelift-build-cli-uploading-create-build.md)建。使用此選項，您可以在 Amazon S3 中管理建置版本。

使用這兩種方法， Amazon GameLift Servers 會使用唯一的組建 ID 和其他中繼資料建立新的組建資源。組建以**初始化**狀態開始。在 Amazon GameLift Servers取得遊戲伺服器檔案後，組建會移至**就緒**狀態。

當組建準備就緒時，您可以將其部署到新的Amazon GameLift Servers機群。如需詳細資訊，請參閱 [建立Amazon GameLift Servers受管 EC2 機群](fleets-creating.md)。當 Amazon GameLift Servers 設定新機群時，它會將建置檔案下載到每個機群執行個體，並安裝建置檔案。

# 從檔案目錄建立組建
<a name="gamelift-build-cli-uploading-upload-build"></a>

若要建立存放在任何位置的遊戲組建，包括本機目錄，請使用 [https://docs.aws.amazon.com/cli/latest/reference/gamelift/upload-build.html](https://docs.aws.amazon.com/cli/latest/reference/gamelift/upload-build.html) AWS CLI 命令。此命令會在 Amazon GameLift Servers 中建立新的建置記錄，並從您指定的位置上傳檔案。

**傳送上傳請求。**在命令列視窗中，輸入下列**upload-build**命令和參數。

```
aws gamelift upload-build \
    --name user-defined name of build \
    --operating-system supported OS \
    --server-sdk-version server SDK for Amazon GameLift Servers version \
    --build-root build path \
    --build-version user-defined build number \
    --region region name
```
+ **operating-system** – 遊戲伺服器的建置執行期環境。您必須指定作業系統值。您稍後無法更新此項目。
+ **server-sdk-version** – 遊戲Amazon GameLift Servers伺服器與之整合的伺服器 SDK 版本。如果您不提供值， Amazon GameLift Servers會使用預設值 `4.0.2`。如果您指定不正確的伺服器 SDK 版本，則呼叫 `InitSdk` 以建立Amazon GameLift Servers與服務的連線時，遊戲伺服器建置可能會失敗。
+ **build-root** – 建置檔案的目錄路徑。
+ **name** – 新建置的描述性名稱。
+ **build-version** – 組建檔案的版本詳細資訊。
+ **region** – 您要建立建置的 AWS 區域。在您計劃部署機群的區域中建立建置。如果您要在多個區域中部署遊戲，請在每個區域中建立組建。
**注意**  
使用 檢視您目前的預設區域[https://docs.aws.amazon.com/cli/latest/reference/configure/get.html](https://docs.aws.amazon.com/cli/latest/reference/configure/get.html)。若要變更您的預設區域，請使用 [https://docs.aws.amazon.com/cli/latest/reference/configure/set.html](https://docs.aws.amazon.com/cli/latest/reference/configure/set.html)命令。

*範例*

```
aws gamelift upload-build \
    --operating-system AMAZON_LINUX_2023 \
    --server-sdk-version "5.0.0" \
    --build-root "~/mygame" \
    --name "My Game Nightly Build" \
    --build-version "build 255" \
    --region us-west-2
```

```
aws gamelift upload-build \
    --operating-system WINDOWS_2022 \
    --server-sdk-version "5.0.0" \
    --build-root "C:\mygame" \
    --name "My Game Nightly Build" \
    --build-version "build 255" \
    --region us-west-2
```

為了回應您的上傳請求， Amazon GameLift Servers提供上傳進度。成功上傳時， 會Amazon GameLift Servers傳回新的建置記錄 ID。上傳時間取決於遊戲檔案的大小和連線速度。

# 使用 Amazon S3 中的檔案建立組建
<a name="gamelift-build-cli-uploading-create-build"></a>

您可以將建置檔案存放在 Amazon S3 中，並從Amazon GameLift Servers該處將其上傳到 。當您建立建置時，您可以指定 S3 儲存貯體位置，並直接從 Amazon S3 Amazon GameLift Servers擷取建置檔案。

**建立建置資源**

1. **將您的建置檔案儲存在 Amazon S3 中。**建立包含封裝建置檔案的 .zip 檔案，並將其上傳至 中的 S3 儲存貯體 AWS 帳戶。請記下儲存貯體標籤和檔案名稱，您在建立Amazon GameLift Servers組建時將需要這些名稱。

1. **讓 Amazon GameLift Servers 可以存取您的建置檔案。**遵循 中的指示建立 IAM 角色[在 Amazon S3 中存取遊戲組建檔案](security_iam_id-based-policy-examples.md#security_iam_id-based-policy-examples-access-storage-loc)。建立角色後，請記下新角色的 Amazon Resource Name (ARN)，建立組建時將需要此名稱。

1. **建立組建。**使用 Amazon GameLift Servers主控台或 AWS CLI 建立新的建置記錄。您必須擁有 `PassRole`許可，如中所述[的 IAM 許可範例 Amazon GameLift Servers](gamelift-iam-policy-examples.md)。

------
#### [ Console ]

1. 在[Amazon GameLift Servers主控台](https://console.aws.amazon.com/gamelift/)的導覽窗格中，選擇**託管**、**建置**。

1. 在**建置**頁面上，選擇**建立建置**。

1. 在**建立建置**頁面的**建置設定**下，執行下列動作：

   1. 針對**名稱**，輸入指令碼名稱。

   1. 在**版本**中，輸入版本。由於您可以更新組建的內容，版本資料可協助您追蹤更新。

   1. 針對**作業系統 (OS)**，選擇遊戲伺服器建置的作業系統。您稍後無法更新此值。

   1. 針對**遊戲伺服器建置**，輸入您上傳到 Amazon **S3 之建置物件**的 S3 URI，然後選擇**物件版本**。 Amazon S3 如果您不記得 Amazon S3 URI 和物件版本，請選擇**瀏覽 S3** 並搜尋建置物件。

   1. 對於 **IAM 角色**，請選擇您建立的角色，以Amazon GameLift Servers允許存取您的 S3 儲存貯體和建置物件。

1. （選用） 在**標籤**下，輸入**索引**鍵和**值**對，將標籤新增至組建。

1. 選擇**建立**。

Amazon GameLift Servers 會將 ID 指派給新組建，並上傳指定的 .zip 檔案。您可以在組建頁面上檢視新**組**建，包括狀態。

------
#### [ AWS CLI ]

若要定義新建置並上傳伺服器建置檔案，請使用 [https://docs.aws.amazon.com/cli/latest/reference/gamelift/create-build.html](https://docs.aws.amazon.com/cli/latest/reference/gamelift/create-build.html)命令。

1. 開啟命令列視窗，並切換到您可以使用 的目錄 AWS CLI。

1. 輸入下列**create-build**命令：

   ```
   aws gamelift create-build \
       --name user-defined name of build \
       --server-sdk-version server SDK for Amazon GameLift Servers version \
       --operating-system supported OS \
       --build-version user-defined build number \
       --storage-location "Bucket"=S3 bucket label,"Key"=Build .zip file name,"RoleArn"=Access role ARN} \
       --region region name
   ```
   + **name** – 新建置的描述性名稱。
   + **server-sdk-version** – Amazon GameLift Servers您用來整合遊戲伺服器與 的伺服器 SDK 版本Amazon GameLift Servers。如果您未提供值， Amazon GameLift Servers會使用預設值 `4.0.2`。
   + **operating-system** – 遊戲伺服器的建置執行期環境。您必須指定作業系統值。您稍後無法更新此項目。
   + **build-version** – 組建檔案的版本詳細資訊。此資訊很有用，因為每個遊戲伺服器的新版本都需要新的建置資源。
   + **storage-location**
     + **Bucket** – 包含您建置的 S3 儲存貯體名稱。例如，"my\$1build\$1files"。
     + **Key** – 包含建置檔案的 .zip 檔案名稱。例如，「my\$1game\$1build\$17.0.1、7.0.2」。
     + **RoleARN** – 指派給您建立之 IAM 角色的 ARN。例如，「arn：aws：iam：：111122223333：role/GameLiftAccess」。如需政策範例，請參閱 [在 Amazon S3 中存取遊戲組建檔案](security_iam_id-based-policy-examples.md#security_iam_id-based-policy-examples-access-storage-loc)。
   + **region** – 在您計劃部署機群的 AWS 區域中建立建置。如果您要在多個區域中部署遊戲，請在每個區域中建立組建。
**注意**  
我們建議您使用 [https://docs.aws.amazon.com/cli/latest/reference/configure/get.html](https://docs.aws.amazon.com/cli/latest/reference/configure/get.html)命令檢查目前的預設區域[https://docs.aws.amazon.com/cli/latest/reference/configure/get.html](https://docs.aws.amazon.com/cli/latest/reference/configure/get.html)。若要變更您的預設區域，請使用 [https://docs.aws.amazon.com/cli/latest/reference/configure/set.html](https://docs.aws.amazon.com/cli/latest/reference/configure/set.html)命令。

   *範例*

   ```
   aws gamelift create-build \
       --operating-system WINDOWS_2022 \
       --storage-location "Bucket"="my_game_build_files","Key"="mygame_build_101.zip","RoleArn"="arn:aws:iam::111122223333:role/gamelift" \
       --name "My Game Nightly Build" \
       --build-version "build 101" \
       --region us-west-2
   ```

1. 若要檢視新組建，請使用 [https://docs.aws.amazon.com/cli/latest/reference/gamelift/describe-build.html](https://docs.aws.amazon.com/cli/latest/reference/gamelift/describe-build.html)命令。

------