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)