本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用关联的 Git 存储库创建笔记本实例 (CLI)
重要
允许 Amazon SageMaker Studio 或 Amazon SageMaker Studio Classic 创建亚马逊 SageMaker资源的自定义IAM策略还必须授予向这些资源添加标签的权限。需要向资源添加标签的权限,因为 Studio 和 Studio Classic 会自动标记他们创建的任何资源。如果IAM策略允许 Studio 和 Studio Classic 创建资源但不允许标记,则在尝试创建资源时可能会出现 AccessDenied “” 错误。有关更多信息,请参阅 提供为资源添加标签 SageMaker的权限。
AWS Amazon 托管政策 SageMaker授予创建 SageMaker 资源的权限已经包括在创建这些资源时添加标签的权限。
要使用 AWS CLI创建笔记本实例并关联 Git 存储库,请使用 create-notebook-instance
命令,如下所示:
-
指定要用作默认存储库的存储库作为
default-code-repository
参数的值。Amazon 将此存储库作为子目录 SageMaker克隆到 Jupyter 启动目录中,网址为。/home/ec2-user/SageMaker
当您打开笔记本实例时,它会在此存储库中打开。要使用作为资源存储在您的 SageMaker 账户中的存储库,请将存储库的名称指定为default-code-repository
参数的值。要使用未存储在您账户中的存储库,请将存储库URL的指定为default-code-repository
参数的值。 -
指定最多三个附加存储库作为
additional-code-repositories
参数的值。 SageMaker 将此存储库作为子目录克隆到的 Jupyter 启动目录中/home/ec2-user/SageMaker
,通过将该存储库添加到默认存储库的.git/info/exclude
目录中,即可将其排除在默认存储库之外。要使用作为资源存储在您的 SageMaker 账户中的存储库,请将存储库的名称指定为additional-code-repositories
参数的值。要使用未存储在您的账户中的存储库,请将存储库URLs的指定为additional-code-repositories
参数的值。
例如,以下命令创建一个 notebook 实例,该实例包含一个名为的存储库MyGitRepo
,该存储库作为资源存储在您的 SageMaker 账户中,作为默认存储库,以及托管在其上的其他存储库 GitHub:
aws sagemaker create-notebook-instance \ --notebook-instance-name "MyNotebookInstance" \ --instance-type "ml.t2.medium" \ --role-arn "arn:aws:iam::012345678901:role/service-role/AmazonSageMaker-ExecutionRole-20181129T121390" \ --default-code-repository "MyGitRepo" \ --additional-code-repositories "https://github.com/myprofile/my-other-repo"
注意
如果您使用的 AWS CodeCommit 存储库名称中不包含 SageMaker “”,请将codecommit:GitPull
和codecommit:GitPush
权限添加到您作为role-arn
参数传递给create-notebook-instance
命令的角色中。有关如何为角色添加权限的信息,请参阅AWS Identity and Access Management
用户指南中的添加和删除IAM策略。