vscode(ローカルマシン上)をGoogle Colab(無料サービス)ランタイムに接続することは可能ですか?質問する

vscode(ローカルマシン上)をGoogle Colab(無料サービス)ランタイムに接続することは可能ですか?質問する

GCP では、vscode サーバーをセットアップしてそれに接続できることは知っています。しかし、ここで私が知りたいのは、Google Colab のランタイム インスタンス (無料のもの) に接続できるかどうかです。出典:) をローカルで実行されている vscode から実行できます。私の記憶が正しければ、ローカルで新しいインスタンスを作成してそれに接続する代わりに、vscode で任意のリモート Jupyter カーネルに接続できます。

そこで、最初に Python 3 ノートブックを作成し、次にローカル マシンから vscode を起動し、Colab ランタイムに接続して vscode 内でコードを記述することが可能かどうかを知りたいです。

ここにはローカルなものは何もありません。すべてのファイル、ノートブック、すべてが Google Colab 上に存在し、Google 独自のエディタではなく vscode を使用してコーディングとコードの実行 (デバッグなど) を行うだけです。

アップデート

回答のおかげで、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 root@7561da0610da (RSA)
Creating SSH2 ECDSA key; this may take some time ...
256 SHA256:6Yo/7I9JPyYfKJYvtiVelNFHrIL7R1xaB09fDWbVYf4 root@7561da0610da (ECDSA)
Creating SSH2 ED25519 key; this may take some time ...
256 SHA256:r1HvJi/Y9twPkXoayNA4cSF55eH4MdOETHhXNSiC4ok root@7561da0610da (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 トークンを変更してもう一度試してみましたが、うまくいきませんでした。

ベストアンサー1

ssh を使わない別の方法を見つけました。

# Install jupyterlab and ngrok
!pip install jupyterlab==2.2.9 pyngrok -q

# Run jupyterlab in background
!nohup jupyter lab --ip=0.0.0.0 &

# Make jupyterlab accessible via ngrok
from pyngrok import ngrok
print(ngrok.connect(8888))

JupyterLabのURLが表示されます

http://f1fe6fb39df6.ngrok.io  # for example

これをクリックするとJupyterLabがすぐに実行できます。またはVSCodeでURLを使用してリモート Jupyter カーネル

短くするために私のライブラリを使用することもできます。

!pip install kora -q
from kora import jupyter
jupyter.start(lab=True)

おすすめ記事