Google Colab上のノートブックにcolab-sshモジュールをインストールして、そこへVS CodeからSSH接続する方法を紹介します。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
前回は、ColabCodeモジュールを使って、Google Colab上でVisual Studio Code(以下、VS Code)のサーバ版ともいえる「code-server」を実行する方法を見ました。今回は、colab-sshモジュールを使って、ローカル環境で実行しているVS CodeからGoogle ColabにSSH接続する方法を紹介します。
インターネットを「vscode colab」などの語で検索すると、VS CodeからGoogle ColabにSSH接続するための情報が数多く見つかります(もちろん、colab-sshモジュールを使った方法も見つかります)。それらの情報の多くは少し手間がかかるものです。ここでは、なるべく手間がかからないように、colab-sshモジュールを使うことにしました。
colab-sshはGoogle ColabへのSSH接続を簡単に行えるようにするためのモジュールで、これとVS CodeのRemote - SSH拡張機能を組み合わせることで、VS CodeからGoogle ColabへのSSH接続を簡単に行うのが今回の目的です。なお、colab-sshモジュールではGoogle ColabにSSH接続する方法として大きく以下の2つがサポートされています。
本稿では前者の方法を紹介します。
まずはlaunch_ssh_cloudflared関数を使う方法を見てみましょう。大まかな手順は次の通りです。
上の手順でGoogle ColabへのSSH接続を行ってみましょう。
こちらの方法では、事前にcloudflaredをローカルマシンにダウンロードして、インストールしておく必要があります。ダウンロードリンクやインストール方法については、[Downloads]ページを参照してください。以下ではWindows版のcloudflaredをインストールしたものとします(Windows版のcloudflaredの場合、インストールといっても、ダウンロードしたファイルを適当なフォルダに移動するだけでした。ここでは「C:\cloudflared」フォルダを作成して、そこにファイルを移動しました)。
このとき、インストールしたcloudflaredの絶対パスを覚えておくようにしましょう(筆者の場合は「C:\cloudflared\cloudflared-windows-amd64.exe」です)。
次にGoogle Colabで新規にノートブックを作成します。前回のColabCodeモジュールと同じく、このノートブックはあくまでもVS CodeからGoogle Colabに接続するために使うことには注意してください。このとき、必要であれば(多くの場合はそうでしょう)、Google Colab環境でGPUを使うようにランタイムの設定を変更しておきます。
colab-sshモジュールをインストールするには、「!pip install colab_ssh --upgrade」コマンドを実行するだけです。
インストールできたら、まずは次のコードをセルで実行しましょう。
from google.colab import drive
drive.mount('./drive')
既に述べたように、今コードを記述しているノートブックはあくまでもVS CodeからGoogle ColabにSSH接続を可能にするためのものでしかありません。仮想マシンに置いたファイルやデータは、その削除時に一緒に削除されてしまいます(これは、前回に取り上げたColabCodeモジュールと同様です)。そのため、Google Driveを仮想マシンにマウントして、そこにあるファイルやノートブックを使うためにこれが必要になります。
このコードを仮想マシン上で始めて実行すると、次のように認証コードを入力するように促されるので、自分がログインしたことを確認した上で、認証コードを取得して、入力しましょう。
次に先ほどインポートしたcolab-sshモジュールからlaunch_ssh_cloudflared関数をインポートします。
from colab_ssh import launch_ssh_cloudflared
launch_ssh_cloudflared(password='……')
launch_ssh_cloudflared関数を呼び出すと、上の画像のようなメッセージが表示されます。これは「cloudflaredをダウンロードして、その絶対パスをコピーして」「画像内に示されている構成をSSHの構成ファイルに貼り付けろ」「VS CodeからはXXXを指定すれば接続できるよ」と書いてあります。
というわけで次ページでは、Google ColabにSSH接続できるように拡張機能をインストールしてみましょう。
Copyright© Digital Advantage Corp. All Rights Reserved.