问题描述
我已经在Google Cloud上创建了VM实例,还设置了Notebook实例。在这种情况下,我有一堆笔记本,python模块以及大量数据。
我想使用终端在我的VM实例上运行脚本。我尝试在Jupyter笔记本中运行它,但是它失败了几个小时,并导致笔记本崩溃。我决定尝试从命令行尝试。但是,当我使用文档中的命令将ssh插入实例时:
gcloud beta compute ssh --zone "<Zone>" "<Instance Name>" --project "<Project-ID>",
或
gcloud compute ssh --project <Project-ID> --zone <Zone> <Instance Name>
或
gcloud compute ssh --project $PROJECT_ID --zone $ZONE $INSTANCE_NAME -- -L 8080:localhost:8080
我已成功连接到实例,但是缺少文件系统。我找不到笔记本或脚本。我可以看到这些文件的唯一方法是使用GUI并从AI Platform > Notebooks
控制台中选择“ Open Jupyter Lab”。
如何通过命令行访问VM,以便仍然可以看到与此VM实例关联的“永久磁盘”?
解决方法
我在fast.ai入门页面上找到了答案。即,您必须在ssh命令中将用户名指定为jupyter
:
解决方案1:默认区域和配置的项目:
gcloud compute ssh jupyter@<instance name>
或者如果您想使用端口转发来访问笔记本电脑:
gcloud compute ssh jupyter@<instance name> -- -L 8080:localhost:8080
解决方案2:无默认区域或项目:
请注意,我从这两个命令中都省略了zone
和project id
。如果您在初始gcloud init
阶段设置了默认区域和项目,则不需要它们。如果您没有这样做,那么命令将变为:
gcloud compute ssh --project <project ID> --zone <zone> jupyter@<instance name>
或者如果您想使用端口转发来运行笔记本:
gcloud compute ssh --zone <zone> jupyter@<instance name> -- -L 8080:localhost:8080