如何从Google云端datalab将笔记本推送到github?

如何从Google云端datalab将笔记本推送到github?

问题描述:

我想设置谷歌云datalab从github回购看我的笔记本电脑,并推动他们回到那里,因为我进行了更改。如何从Google云端datalab将笔记本推送到github?

我能够设置一个镜像我的github项目的云服务器,但是当在datalab中使用ungit推送更改时,它表示连接的云服务器仓库是只读的。

其他人如何设置?

已连接的云存储源仅从Github/BitBucket同步到Cloud Source回购的一种方式,请注意顶部的注释here

Datalab automatically integrates带有不是镜像的云端源代码库,因此您可以分别进行推送。如果您需要使用Github repo,则需要在承载Datalab容器内的Datalab实例的虚拟机上设置凭据。尽管如此,确保你是唯一一个能够访问该云计算项目的人,因为所有项目读者都可以访问虚拟机。

+2

正是你如何设置你的VM上的git证书,以便datalab可以使用它?那里有导游吗? – aloo

+0

你必须将你的凭证放在容器中,以便小工把它们拿起来。不幸的是,这不是非常简单,你需要ssh进入运行Datalab的虚拟机,并在Docker容器中打开一个shell会话,如果你必须停止该容器(或虚拟机),你的信任将会丢失。 – yelsayed

+0

你有没有关于如何“把你的凭据放在容器内供小孩拿起来”的资源? – aloo

我首先使用datalab start <INSTANCE_NAME_HERE>命令和**--no-create-repository**标志设置datalab实例,以便不设置Cloud Source回购。然后我按照这些步骤克隆了一个git repo:

  1. 连接到实例。
  2. 点击右上角的ungit图标。
  3. 使用ungit中的“地址栏”,导航到:/ content/
  4. 现在只需要将您想要克隆的git url放入'clone from'部分。
  5. 您将被要求进行身份验证(我有最后一次通过以便保存凭据),但否则恐怕您每次推或拉将来都必须输入凭据。

在github上:

  1. 设置SSH部署(公共)密钥(使用ssh-凯基生成它)

在GCP:

  1. 去到计算实例,点击datalab虚拟机
  2. 在'user-data'脚本中,有一个de systemd datalab服务FINITION - 修改和添加/根目录挂载定义:

    -v /mnt/disks/datalab-pd/root:/root 
    
  3. ssh进入云datalab VM实例

  4. 创建目录

    mkdir -p /mnt/disks/datalab-pd/root/.ssh 
    
  5. 在.ssh目录把以前生成的私人ssh密钥和git配置文件(〜/。SSH /配置)

  6. 配置文件应该是这样的:

    host github.com 
    HostName github.com 
    IdentityFile ~/.ssh/id_rsa 
    User git 
    

重启datalab实例后,你应该能够推拉与git回购