使用 Google 个 AI Platform Notebook 实例,如何从我的本地计算机通过 ssh 连接到 jupyterlab 容器?

With Google AI Platform Notebook instances, how do I ssh into the jupyterlab container from my local machine?

我正在尝试将 VS Code 远程开发连接到 JupyterLab 服务器 运行ning on Google Cloud with AI Platform(Notebook 实例)。

如何添加一个 ssh 主机,它不连接到虚拟机,而是连接到 docker 容器 运行 连接到 JupyterLab 服务器?

我希望能够从本地笔记本电脑的 VS Code 编辑该容器中的源代码

我知道 gcloud compute config-ssh,它编辑了我的 ~/.ssh/config 并添加了一个 Host 条目,VS Code 可以使用它来连接到 VM。但是我需要更进一步,进入 docker 容器 运行ning 的文件系统。

编辑:我的问题的前提是错误的,我知道了。 jupyterlab 不 运行 在容器中;它 运行 通常在 VM 上。因此,ssh 进入 VM 后,我可以访问与 jupyter 可用的文件系统相同的文件系统。唯一的问题是将 jupyter 用户指定为 ssh.

Google 在 Using ssh to access JupyterLab 上有文档。如果您 运行 在 VM 上并且知道实例名称,则可以建立到 VM 的 SSH 隧道。来自文档:

Follow these steps to set up SSH port forwarding and then access your JupyterLab session through a local browser:

  1. Type the following command in either Cloud Shell or a local environment where the Cloud SDK is installed.

    gcloud compute ssh --project PROJECT_ID \
        --zone ZONE \
        INSTANCE_NAME -- -L 8080:localhost:8080
    

    Replace the following:

    • PROJECT_ID: Your project ID
    • ZONE: The Google Cloud zone where your instance is located
    • INSTANCE_NAME: The name of your instance
  2. If you ran the command on your local machine, visit https://localhost:8080 to access JupyterLab.

    If using Cloud Shell, access JupyterLab through the Web Preview on port 8080. The Web Preview button Web Preview Button can be found on the top right of the Cloud Shell taskbar.

如果您是 运行 Notebooks 实例,请转至 Notebooks page and click on the instance name. You should see a way of connecting via cloud shell or SSH. If you're running a DataProc JupyterHub cluster you'll need to look for your pod in your kubernetes workloads。在 pod 页面上,您应该有一个菜单图标,它允许您通过 KUBECTL 进行 SSH 访问。