是否可以将vscode(在本地计算机上)与Google Colab(免费服务)运行时连接?

里卡:

我知道在GCP上,我们可以设置一个vscode服务器并连接到该服务器。但是我在这里要了解的是,是否可以通过本地运行的vscode 连接到Google Colab上的运行时实例(免费的实例,即https://colab.research.google.com)。如果我没记错的话,我们可以连接到vscode中的任何远程Jupyter内核,而不必在本地创建新实例并连接到它。

因此,我想知道是否有可能首先创建一个Python 3笔记本,然后从您的本地计算机上启动vscode,连接到Colab运行时并在vscode中进行编码吗?

这里没有本地内容,所有文件,笔记本,所有内容都驻留在Google Colab上,只是使用vscode而不是Google自己的编辑器进行编码和执行代码(调试等)。

更新资料

多亏了答案,我才能成功连接到Google Colab。但是,当我退出ssh并尝试再次登录时,我遇到了这个问题:

Creating config file /etc/ssh/sshd_config with new version
Creating SSH2 RSA key; this may take some time ...
2048 SHA256:yxFwLslfRq7YZFWNIhAD8TfJdp6sTfFbR2CXOWcysOA [email protected] (RSA)
Creating SSH2 ECDSA key; this may take some time ...
256 SHA256:6Yo/7I9JPyYfKJYvtiVelNFHrIL7R1xaB09fDWbVYf4 [email protected] (ECDSA)
Creating SSH2 ED25519 key; this may take some time ...
256 SHA256:r1HvJi/Y9twPkXoayNA4cSF55eH4MdOETHhXNSiC4ok [email protected] (ED25519)
Created symlink /etc/systemd/system/sshd.service → /lib/systemd/system/ssh.service.
Created symlink /etc/systemd/system/multi-user.target.wants/ssh.service → /lib/systemd/system/ssh.service.
invoke-rc.d: could not determine current runlevel
invoke-rc.d: policy-rc.d denied execution of start.
Copy authtoken from https://dashboard.ngrok.com/auth
··········
Root password: aCsRocquey6953P9tHhF
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/usr/lib/python3.6/json/__init__.py", line 299, in load
    parse_constant=parse_constant, object_pairs_hook=object_pairs_hook, **kw)
  File "/usr/lib/python3.6/json/__init__.py", line 354, in loads
    return _default_decoder.decode(s)
  File "/usr/lib/python3.6/json/decoder.py", line 339, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/lib/python3.6/json/decoder.py", line 357, in raw_decode
    raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

我重新启动了Google Colab运行时,甚至更改了ngrok令牌,然后再次尝试,不走运!

Dimitris Milonopoulos:

是的,这很有可能。今天才处理。

您需要做的是与google collab建立ssh连接。将此写在google collab jupyter笔记本上:

import random, string
password = ''.join(random.choice(string.ascii_letters + string.digits) for i in range(20))

#Download ngrok
! wget -q -c -nc https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-amd64.zip
! unzip -qq -n ngrok-stable-linux-amd64.zip
#Setup sshd
! apt-get install -qq -o=Dpkg::Use-Pty=0 openssh-server pwgen > /dev/null
#Set root password
! echo root:$password | chpasswd
! mkdir -p /var/run/sshd
! echo "PermitRootLogin yes" >> /etc/ssh/sshd_config
! echo "PasswordAuthentication yes" >> /etc/ssh/sshd_config
! echo "LD_LIBRARY_PATH=/usr/lib64-nvidia" >> /root/.bashrc
! echo "export LD_LIBRARY_PATH" >> /root/.bashrc

#Run sshd
get_ipython().system_raw('/usr/sbin/sshd -D &')

#Ask token
print("Copy authtoken from https://dashboard.ngrok.com/auth")
import getpass
authtoken = getpass.getpass()

#Create tunnel
get_ipython().system_raw('./ngrok authtoken $authtoken && ./ngrok tcp 22 &')
#Print root password
print("Root password: {}".format(password))
#Get public address
! curl -s http://localhost:4040/api/tunnels | python3 -c \
    "import sys, json; print(json.load(sys.stdin)['tunnels'][0]['public_url'])"

检查您的ngrok状态以获取您的端口号(通过网站)

之后,您可以通过ssh连接到collab:

这是终端命令:

$ ssh <user>@0.tcp.ngrok.io -p <portNum>

(它会要求您提供上述代码段生成的密码)。您现在应该可以连接了。

但是,如果要使用vscode,请通过远程SSH扩展与ssh重复连接

资料来源:

远程ssh:https : //marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-ssh连接:使用ssh从PC控制台连接到google collab

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

是否有可能写一个shell脚本,需要输入然后将ssh到我的本地计算机上的服务器和运行脚本?

我可以运行Google Colab(免费版)脚本,然后关闭计算机吗?

在本地计算机上运行点火

启动然后停止本地计算机上的MySQL服务

在本地计算机上运行laravel下载的项目

Fabric可以在远程计算机上运行本地脚本吗?

Postgresql服务器正在本地计算机上运行,但psql无法连接

Fortnite Tracker API仅在本地计算机上运行?

Google Colab:从本地上传Pytorch模型后,“无法连接到运行时”

Windows无法在本地计算机上启动RabbitMQ服务

检查命名的SQL Server实例是否在本地计算机上运行

如何在本地计算机上使用Google Colab

Google Colab:本地运行时使用

无法连接到任何X显示器:Google Colab运行时

在服务器上发布后运行但在本地计算机上正常运行时,在mvc 5中加载视图时出现异常

更新后,Google Colab将无法连接到本地运行时

如何使用Google Colab本地运行时并连接到Google云端硬盘

将Google colab连接到Google Compute Engine实例上的运行时

如何编写(浮动Web)代码,以便JavaScript文件可以在本地计算机上运行?

是否可以检测用户计算机上是否正在运行应用程序

在我的本地计算机上运行Django站点,我是否正确重定向了URL?

是否可以在可以通过SSH进行连接的远程计算机上使用该接口?

在本地计算机上部署Web服务工作,但在另一台计算机上抛出运行时错误

sqlalchemy连接相同的凭据在不同的计算机上运行时被拒绝

在远程计算机上运行本地python脚本

Maven构建无法在Jenkins上运行,但可以在本地计算机上运行

Rails 4-在本地计算机上运行暂存

如何在本地计算机上运行php?

在本地和远程计算机上运行的Shell脚本

TOP 榜单

热门标签

归档