在我的AWS SageMaker项目的GitHub存储库中,提交被标记为由用户“ EC2默认用户”创建。
如何在SageMaker中自定义该用户的名称,以便每次启动Notebook实例时都使用该名称?
答案 0 :(得分:6)
要系统地解决此问题,可以在生命周期配置中使用启动笔记本配置。
这是脚本模板:
#!/bin/bash
set -e
cat << EOF >> /home/ec2-user/.gitconfig
[user]
name = John Doe
email = johndoe@example.com
EOF
请用您的实际值替换name
和email
。
此脚本将在SageMaker的计算机上为.gitconfig
的{{1}}文件添加行。
这与您可以通过以下两个命令手动实现的效果相同:
ec2-user
由于SageMaker's Notebook Instances start/stop policy:
仅保存在/ home / ec2-user / SageMaker文件夹中的文件和数据 在笔记本实例会话之间保持不变。文件和数据 保存在此目录之外的内容将在笔记本计算机上覆盖 实例停止并重新启动。
您需要将此脚本添加为启动笔记本脚本,因此它将在每次启动笔记本实例时运行。
以下是屏幕快照,它在AWS Web Console中是什么样的:
Start script config example
答案 1 :(得分:2)
您是从ec2实例中推送吗?
提交作者与使用ssh密钥对推送进行身份验证无关。
它与当前的Git配置有关:
git config user.name
git config user.email
确保这些本地设置的值正确(对于EC2 Git存储库为本地),并且下一次新提交将由正确的作者进行。
我复制并赞扬了此帖子:How to change user identity when git pushing via ssh?
答案 2 :(得分:-1)
您还可以使用SageMaker笔记本电脑的内置Git集成来定义用户名(并为其提供密码)。