

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

# 使用 S3 建立 conda 頻道
<a name="configure-jobs-s3-channel"></a>

如果您的任務需要執行 [https://docs.aws.amazon.com/deadline-cloud/latest/userguide/create-queue-environment.html#conda-queue-environment](https://docs.aws.amazon.com/deadline-cloud/latest/userguide/create-queue-environment.html#conda-queue-environment)或 [https://conda-forge.org/](https://conda-forge.org/)頻道上無法使用的應用程式，您可以託管自訂 conda 頻道來提供您自己的套件。當您在截止日期雲端 AWS （截止日期雲端） 主控台中建立佇列時，主控台預設會新增 Conda 佇列環境。若要讓套件可供任務使用，請將自訂頻道新增至佇列環境。

conda 頻道是靜態託管內容，您可以透過[各種方式](https://rattler-build.prefix.dev/latest/publish/)託管，包括檔案系統或 Amazon Simple Storage Service (Amazon S3) 儲存貯體。如果您的截止日期雲端陣列使用資產的共用檔案系統，您可以使用其上的任何路徑做為頻道名稱。您可以在 Amazon S3 儲存貯體中託管頻道，以便使用 AWS Identity and Access Management (IAM) 許可進行更廣泛的存取。

您可以在[本機建置和測試套件](build-test-packages-locally.md)，然後將其[發佈到頻道](publish-packages-s3-channel.md)。在本機建置套件是開始在套件建置配方上迭代的簡單方法，無需基礎設施設定。您也可以使用截止日期雲端[套件建置佇列](automate-package-builds.md)來建置套件，並將其發佈至頻道。套件建置佇列可簡化多個作業系統和加速器組態的維護套件。您可以從任何地方更新版本並提交整組套件組建。

您可以透過多種方式為 Studio 和 Deadline Cloud Farm 設定頻道。您可以有一個 Amazon S3 頻道，並將所有工作站和陣列主機設定為使用它。您也可以擁有多個頻道，並使用 AWS DataSync (DataSync) 設定鏡像。例如，您的 Deadline Cloud 套件建置佇列可以發佈到 Amazon S3 頻道，該頻道在現場部署針對工作站和現場部署陣列主機進行鏡像。

**Topics**
+ [在本機建置和測試套件](build-test-packages-locally.md)
+ [將套件發佈至 Amazon S3 conda 頻道](publish-packages-s3-channel.md)
+ [設定自訂 conda 套件的生產佇列許可](#s3-channel-configure-permissions)
+ [將 conda 頻道新增至佇列環境](#s3-channel-add-channel)
+ [為應用程式或外掛程式建立 conda 套件](conda-package.md)
+ [建立 的 conda 組建配方 Blender](create-conda-recipe-blender.md)
+ [建立 的 conda 組建配方 Autodesk Maya](create-conda-recipe-maya.md)
+ [建立Maya轉接器的 conda 組建配方](create-conda-recipe-maya-openjd.md)
+ [建立Autodesk Maya to Arnold (MtoA)外掛程式的 conda 組建配方](create-conda-recipe-mtoa-plugin.md)
+ [使用截止日期雲端自動化套件建置](automate-package-builds.md)
+ [將外掛程式同步至截止日期雲端工作者](plugin-sync.md)

## 設定自訂 conda 套件的生產佇列許可
<a name="s3-channel-configure-permissions"></a>

您的生產佇列需要佇列 S3 儲存貯體中`/Conda`字首的唯讀許可。開啟與生產佇列相關聯之角色的 AWS Identity and Access Management (IAM) 頁面，並使用下列內容修改政策：

1. 開啟截止日期雲端主控台，並導覽至套件建置佇列的佇列詳細資訊頁面。

1. 選擇佇列服務角色，然後選擇**編輯佇列**。

1. 捲動至**佇列服務角色**區段，然後在 **IAM 主控台中選擇檢視此角色**。

1. 從許可政策清單中，為您的佇列選擇 **AmazonDeadlineCloudQueuePolicy**。

1. 從**許可**索引標籤中，選擇**編輯**。

1. 將新區段新增至佇列服務角色，如下所示。將 {{amzn-s3-demo-bucket}} 和 {{111122223333}} 取代為您自己的儲存貯體和帳戶。

   ```
   {
      "Effect": "Allow",
      "Sid": "CustomCondaChannelReadOnly",
      "Action": [
       "s3:GetObject",
       "s3:ListBucket"
      ],
      "Resource": [
       "arn:aws:s3:::amzn-s3-demo-bucket",
       "arn:aws:s3:::amzn-s3-demo-bucket/Conda/*"
      ],
      "Condition": {
       "StringEquals": {
        "aws:ResourceAccount": "111122223333"
       }
      }
     },
   ```

## 將 conda 頻道新增至佇列環境
<a name="s3-channel-add-channel"></a>

若要使用 S3 conda 頻道，您需要將`s3://amzn-s3-demo-bucket/Conda/Default`頻道位置新增至您提交至截止日期雲端的任務`CondaChannels`參數。Deadline Cloud 提供的提交者會提供欄位來指定自訂 conda 頻道和套件。

您可以編輯生產佇列的 conda 佇列環境，以避免修改每個任務。請執行下列步驟：

1. 開啟截止日期雲端主控台，並導覽至生產佇列的佇列詳細資訊頁面。

1. 選擇環境索引標籤。

1. 選取 **Conda** 佇列環境，然後選擇**編輯**。

1. 選擇 **JSON 編輯器**，然後在指令碼中尋找 的參數定義`CondaChannels`。

1. 編輯該行，`default: "deadline-cloud"`使其從新建立的 S3 conda 頻道開始：

   ```
   default: "s3://amzn-s3-demo-bucket/Conda/Default deadline-cloud"
   ```

服務受管機群預設會為 conda 啟用彈性的頻道優先順序。對於請求 `blender=4.5` 4.5 Blender 同時位於新頻道和`deadline-cloud`頻道的任務，將從頻道清單中的第一個頻道提取套件。如果在第一個通道中找不到指定的套件版本，則會檢查後續通道的套件版本。

對於客戶管理的機群，您可以使用 Deadline Cloud 範例GitHub儲存庫中的其中一個 conda [佇列環境範例來啟用 conda](https://github.com/aws-deadline/deadline-cloud-samples/blob/mainline/queue_environments/README.md) 套件的使用。