

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 自定义 RStudio 图像规格
<a name="rstudio-byoi-specs"></a>

在本指南中，您将学习自带 RStudio 图片时要使用的自定义图片规范。要在 Amazon A SageMaker I 中使用自定义 RStudio 图片，您必须满足两组要求。这些要求是由 RStudio PBC和Amazon SageMaker Studio Classic平台强加的。如果这两组要求中的任何一组未得到满足，您的自定义映像将无法正常运行。

## RStudio PBC 要求
<a name="rstudio-byoi-specs-rstudio"></a>

RStudio PBC 的要求在 [ RStudio Workbench/ RStudio Server Pro、Launcher 和 Kubernetes 中使用 Docker](https://support.rstudio.com/hc/en-us/articles/360019253393-Using-Docker-images-with-RStudio-Server-Pro-Launcher-and-Kubernetes) 镜像一文中列出。按照本文中的说明创建自定义 RStudio 图像的基础。

有关如何在自定义映像中安装多个 R 版本的说明，请参阅[在 Linux 上安装多个 R 版本](https://support.rstudio.com/hc/en-us/articles/215488098)。

## 亚马逊 SageMaker Studio 经典版要求
<a name="rstudio-byoi-specs-studio"></a>

Amazon SageMaker Studio Classic 会对您的 RStudio图片施加以下安装要求。
+ 您必须至少使用 RStudio 基础映像`2025.05.1+513.pro3`。有关更多信息，请参阅 [RStudio 版本控制](rstudio-version.md)。
+ 必须安装以下软件包：

  ```
  yum install -y sudo \
  openjdk-11-jdk \
  libpng-dev \
  && yum clean all \
  && /opt/R/${R_VERSION}/bin/R -e "install.packages('reticulate', repos='https://packagemanager.rstudio.com/cran/__linux__/centos7/latest')" \
  && /opt/python/${PYTHON_VERSION}/bin/pip install --upgrade \
      'boto3>1.0<2.0' \
      'awscli>1.0<2.0' \
      'sagemaker[local]<3'
  ```
+ 必须为 `RSTUDIO_CONNECT_URL` 和 `RSTUDIO_PACKAGE_MANAGER_URL` 环境变量提供默认值。

  ```
  ENV RSTUDIO_CONNECT_URL "YOUR_CONNECT_URL"
  ENV RSTUDIO_PACKAGE_MANAGER_URL "YOUR_PACKAGE_MANAGER_URL"
  ENV RSTUDIO_FORCE_NON_ZERO_EXIT_CODE 1
  ```

以下一般规范适用于由图像版本表示的 RStudio图像。

**运行映像**  
`ENTRYPOINT`并且`CMD`指令会被覆盖，以便图像作为 RSession 应用程序运行。

**停止映像**  
`DeleteApp` API 发出等同于 `docker stop` 命令的指令。容器中的其他进程无法获得信 SIGKILL/SIGTERM 号。

**文件系统**  
`/opt/.sagemakerinternal` 和 `/opt/ml` 目录是保留的目录。这些目录中的任何数据在运行时可能不可见。

**用户数据**  
 SageMaker AI 域中的每位用户都会在图像中共享的 Amazon Elastic File System 卷上获得一个用户目录。当前用户的目录在 Amazon Elastic File System 卷上的位置为 `/home/sagemaker-user`。

**元数据**  
元数据文件位于 `/opt/ml/metadata/resource-metadata.json` 中。除了映像中定义的变量，不会添加额外的环境变量。有关更多信息，请参阅 [获取应用程序元数据](notebooks-run-and-manage-metadata.md#notebooks-run-and-manage-metadata-app)。

**GPU**  
在 GPU 实例上，使用 `--gpus` 选项运行映像。CUDA 工具包应当仅包含在映像中，而不是 NVIDIA 驱动程序中。有关更多信息，请参阅[《NVIDIA 用户指南》](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/user-guide.html)。

**指标和日志记录**  
该 RSession 流程的日志将通过客户的账户发送到亚马逊 CloudWatch 。日志组的名称为 `/aws/sagemaker/studio`。日志流的名称为 `$domainID/$userProfileName/RSession/$appName`。

**映像大小**  
映像大小限制在 25 GB 以内。要查看映像的大小，请运行 `docker image ls`。