

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

# 自訂映像規格
<a name="studio-updated-byoi-specs"></a>

您在 Dockerfile 中指定的映像必須符合以下各節中的規格，才能成功建立映像。

**Topics**
+ [執行映像](#studio-updated-byoi-specs-run)
+ [使用者和檔案系統的規格](#studio-updated-byoi-specs-user-and-filesystem)
+ [應用程式的運作狀態檢查和 URL](#studio-updated-byoi-specs-app-healthcheck)
+ [Dockerfile 範例](#studio-updated-byoi-specs-dockerfile-templates)

## 執行映像
<a name="studio-updated-byoi-specs-run"></a>

您可以透過更新 [https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ContainerConfig.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ContainerConfig.html) 來進行下列組態。如需範例，請參閱 [更新容器組態](studio-updated-byoi-how-to-container-configuration.md)。
+ `Entrypoint` - 您可以設定在執行時期傳遞至容器的 `ContainerEntrypoint` 和 `ContainerArguments`。建議您使用 `ContainerConfig` 設定進入點。如需範例，請參閱上述連結。
+ `EnvVariables` - 使用 Studio 時，您可以定義容器的自訂 `ContainerEnvironment` 變數。您可以選擇性地使用 `ContainerConfig` 更新環境變數。如需範例，請參閱上述連結。

  SageMaker AI 特定環境變數優先使用，並會覆寫名稱相同的任何變數。例如，SageMaker AI 會自動提供字首為 `AWS_` 和 `SAGEMAKER_` 的環境變數，以確保與服務 AWS 和 SageMaker AI 功能適當整合。以下是幾個範例 SageMaker AI 特定環境變數：
  + `AWS_ACCOUNT_ID`
  + `AWS_REGION`
  + `AWS_DEFAULT_REGION`
  + `AWS_CONTAINER_CREDENTIALS_RELATIVE_URI`
  + `SAGEMAKER_SPACE_NAME`
  + `SAGEMAKER_APP_TYPE`

## 使用者和檔案系統的規格
<a name="studio-updated-byoi-specs-user-and-filesystem"></a>
+ `WorkingDirectory` - 您空間的 Amazon EBS 磁碟區掛載在路徑 `/home/sagemaker-user` 上。您無法變更掛載路徑。使用 `WORKDIR` 指示將映像的工作目錄設定為 `/home/sagemaker-user` 內的資料夾。
+ `UID` - Docker 容器的使用者 ID。UID=1000 是支援的值。您可以將 sudo 存取權新增給使用者。ID 會重新對應，以防止容器中執行的程序具有比所需更多的權限。
+ `GID` - Docker 容器的群組 ID。GID=100 是支援的值。您可以將 sudo 存取權新增給使用者。ID 會重新對應，以防止容器中執行的程序具有比所需更多的權限。
+ 中繼資料目錄 – 使用的 `/opt/.sagemakerinternal`和 `/opt/ml` 目錄 AWS。`/opt/ml` 中的中繼資料檔案包含有關資源的中繼資料，例如 `DomainId`。

  使用下列命令來顯示檔案系統內容：

  ```
  cat /opt/ml/metadata/resource-metadata.json
  ```
+ 記錄目錄 – `/var/log/studio` 保留給應用程式的記錄目錄，以及與其相關聯的延伸模組。建議您不要在建立映像時使用這些資料夾。

## 應用程式的運作狀態檢查和 URL
<a name="studio-updated-byoi-specs-app-healthcheck"></a>

運作狀態檢查和 URL 取決於應用程式。選擇與您要為其建置映像之應用程式相關聯的以下連結。
+ 適用於程式碼編輯器的 [應用程式的運作狀態檢查和 URL](code-editor-custom-images.md#code-editor-custom-images-app-healthcheck)
+ 適用於 JupyterLab 的 [應用程式的運作狀態檢查和 URL](studio-updated-jl-admin-guide-custom-images.md#studio-updated-jl-admin-guide-custom-images-app-healthcheck)

## Dockerfile 範例
<a name="studio-updated-byoi-specs-dockerfile-templates"></a>

對於同時符合此頁面上要求和您特定應用程式需求的 Dockerfile 範例，請導覽至個別應用程式區段中的範例 Dockerfile。下列選項包括 Amazon SageMaker Studio 應用程式。
+ 適用於程式碼編輯器的 [Dockerfile 範例](code-editor-custom-images.md#code-editor-custom-images-dockerfile-templates)
+ 適用於 JupyterLab 的 [Dockerfile 範例](studio-updated-jl-admin-guide-custom-images.md#studio-updated-jl-custom-images-dockerfile-templates)

**注意**  
如果您要將自有映像帶入 SageMaker Unified Studio，則需要遵循《Amazon SageMaker Unified Studio 使用者指南》**中的 [Dockerfile 規格](https://docs.aws.amazon.com/sagemaker-unified-studio/latest/userguide/byoi-specifications.html)。  
您可以在《Amazon SageMaker Unified Studio 使用者指南》**的 [Dockerfile 範例中](https://docs.aws.amazon.com/sagemaker-unified-studio/latest/userguide/byoi-specifications.html#byoi-specifications-example)找到 SageMaker Unified Studio 的 `Dockerfile` 範例。