

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

# AWS Batch 任務環境變數
<a name="job_env_vars"></a>

AWS Batch 會在容器任務中設定特定環境變數。這些環境變數提供任務內容器的自我檢查。您可以在應用程式的邏輯中使用這些變數的值。所有 AWS Batch 以 `AWS_BATCH_`字首開頭的變數。這是受保護的環境變數字首。您無法在任務定義或覆寫中將此字首用於您自己的變數。

以下環境變數適用於任務容器：

`AWS_BATCH_CE_NAME`  
此變數設定為放置任務的運算環境名稱。

`AWS_BATCH_JOB_ARRAY_INDEX`  
只會在子陣列任務中設定此變數。陣列任務索引從 0 開始，而且每個子任務會收到一個唯一的索引號碼。例如，含 10 個子系的陣列任務有 0-9 的索引值。您可以使用此索引值，控制您陣列任務子系的區分方式。如需詳細資訊，請參閱[使用陣列任務索引來控制任務差異](array_index_example.md)。

`AWS_BATCH_JOB_ARRAY_SIZE`  
此變數設定為父陣列任務的大小。父陣列任務的大小會傳遞至此變數中的子陣列任務。

`AWS_BATCH_JOB_ATTEMPT`  
會將此變數設為任務嘗試號碼。第一次嘗試的編號為 1。如需詳細資訊，請參閱[自動化任務重試](job_retries.md)。

`AWS_BATCH_JOB_ID`  
此變數設定為 AWS Batch 任務 ID。

`AWS_BATCH_JOB_KUBERNETES_NODE_UID`  
此變數設定為 Pod 執行所在 Kubernetes 叢集中節點物件的 Kubernetes UID。此變數只會針對在 Amazon EKS 資源上執行的任務設定。如需詳細資訊，請參閱 *Kubernetes 文件*中的 [UIDs](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids)。

`AWS_BATCH_JOB_MAIN_NODE_INDEX`  
只會在多節點平行任務中設定此變數。會將此變數設為任務主要節點的索引數量。您的應用程式程式碼可以將 `AWS_BATCH_JOB_MAIN_NODE_INDEX`與個別節點`AWS_BATCH_JOB_NODE_INDEX`上的 進行比較，以判斷其是否為主節點。

`AWS_BATCH_JOB_MAIN_NODE_PRIVATE_IPV4_ADDRESS`  
此變數僅在多節點平行任務子節點中設定。此變數不存在於主節點，但會設定為任務主節點的私有 IPv4 地址。您的子節點應用程式程式碼可以使用此地址與主節點通訊。

`AWS_BATCH_JOB_NODE_INDEX`  
只會在多節點平行任務中設定此變數。會將此變數設為節點的節點索引數量。節點索引從 0 開始，而且每個節點皆會收到一個唯一的索引號碼。例如，含 10 個子系的多節點平行任務具有 0-9 的索引值。

`AWS_BATCH_JOB_NUM_NODES`  
只會在多節點平行任務中設定此變數。此變數設定為您為多節點平行任務請求的節點數量。

`AWS_BATCH_JQ_NAME`  
會將此變數設為您所提交任務的任務佇列名稱。