如何提取Sagemaker Notebook实例用户的用户名以替换EC2-Default-User

时间:2019-06-12 15:01:14

标签: amazon-web-services jupyter-notebook lifecycle amazon-sagemaker

我正在为团队中的多个用户设置笔记本实例。这些用户将能够使用版本控制。问题是,当用户提交时,提交的作者是ec2-default-user。我希望作者是“用户名”,例如john doe。

我知道一种解决方案是告诉用户在命令行中编写“ git config --global user.name“ John Doe””。

这对我不起作用,因为我希望对用户来说这是自动化的。因此,我正在寻找一种方法来在生命周期配置中提取用户的用户名,然后将该用户名传递给一些代码,该代码将设置对用户名的任何提交的作者。

这是我目前拥有的

set -e
cat << EOF >> /home/ec2-user/.gitconfig
[user]
        name = John Doe

EOF

但是在哪里有John Doe,我希望它是已打开其sagemaker笔记本实例的当前用户的用户名。

我想要一种在生命周期配置中提取用户名并将此值粘贴到设置用户名的代码中的方法。我对所有这些都比较陌生,因此知识有限。我看过文档,但似乎找不到很多。

1 个答案:

答案 0 :(得分:0)

您可以将用户名作为Notebook实例名称的一部分包含,或使用用户名标记Notebook Instance,然后使用/opt/ml/metadata/resource-metadata.json下存在的Notebook Instance元数据在Lifecycle Config中提取该信息。

请查看有关如何使用笔记本实例元数据的文档:https://docs.aws.amazon.com/sagemaker/latest/dg/nbi-metadata.html

感谢您使用Amazon SageMaker!