colab-sshを使って、VS CodeからGoogle Colabに接続してみようVisual Studio Codeで快適Pythonライフ(1/2 ページ)

Google Colab上のノートブックにcolab-sshモジュールをインストールして、そこへVS CodeからSSH接続する方法を紹介します。

» 2021年09月03日 05時00分 公開
[かわさきしんじDeep Insider編集部]

この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。

「Visual Studio Codeで快適Pythonライフ」のインデックス

連載目次

 前回は、ColabCodeモジュールを使って、Google Colab上でVisual Studio Code(以下、VS Code)のサーバ版ともいえる「code-server」を実行する方法を見ました。今回は、colab-sshモジュールを使って、ローカル環境で実行しているVS CodeからGoogle ColabにSSH接続する方法を紹介します。

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関数を使用する(cloudflaredをインストールする必要がある)
  • launch_ssh関数を使用する(ngrokに登録して、認証コードを取得する必要がある)

 本稿では前者の方法を紹介します。

VS CodeからGoogle ColabにSSH接続しているところ VS CodeからGoogle ColabにSSH接続しているところ

launch_ssh_cloudflared関数を使う方法

 まずはlaunch_ssh_cloudflared関数を使う方法を見てみましょう。大まかな手順は次の通りです。

  1. ローカルマシンへのcloudflaredのインストール
  2. Google Colabノートブックへのcolab-sshモジュールのインストール
  3. colab-sshモジュールが提供するlaunch_ssh_cloudflared関数を呼び出す
  4. VS CodeへのRemote - SSH拡張機能のインストール
  5. VS CodeからGoogle ColabへSSH接続する

 上の手順でGoogle ColabへのSSH接続を行ってみましょう。

ローカルマシンへのcloudflaredのインストール

 こちらの方法では、事前にcloudflaredをローカルマシンにダウンロードして、インストールしておく必要があります。ダウンロードリンクやインストール方法については、[Downloads]ページを参照してください。以下ではWindows版のcloudflaredをインストールしたものとします(Windows版のcloudflaredの場合、インストールといっても、ダウンロードしたファイルを適当なフォルダに移動するだけでした。ここでは「C:\cloudflared」フォルダを作成して、そこにファイルを移動しました)。

cloudflaredのダウンロードページ cloudflaredのダウンロードページ

 このとき、インストールしたcloudflaredの絶対パスを覚えておくようにしましょう(筆者の場合は「C:\cloudflared\cloudflared-windows-amd64.exe」です)。

Google Colabノートブックへのcolab-sshモジュールのインストール

 次にGoogle Colabで新規にノートブックを作成します。前回のColabCodeモジュールと同じく、このノートブックはあくまでもVS CodeからGoogle Colabに接続するために使うことには注意してください。このとき、必要であれば(多くの場合はそうでしょう)、Google Colab環境でGPUを使うようにランタイムの設定を変更しておきます。

ランタイムの設定 ランタイムの設定

 colab-sshモジュールをインストールするには、「!pip install colab_ssh --upgrade」コマンドを実行するだけです。

colab-sshモジュールのインストール colab-sshモジュールのインストール

 インストールできたら、まずは次のコードをセルで実行しましょう。

from google.colab import drive
drive.mount('./drive')

Google Driveをマウントするコード

 既に述べたように、今コードを記述しているノートブックはあくまでもVS CodeからGoogle ColabにSSH接続を可能にするためのものでしかありません。仮想マシンに置いたファイルやデータは、その削除時に一緒に削除されてしまいます(これは、前回に取り上げたColabCodeモジュールと同様です)。そのため、Google Driveを仮想マシンにマウントして、そこにあるファイルやノートブックを使うためにこれが必要になります。

 このコードを仮想マシン上で始めて実行すると、次のように認証コードを入力するように促されるので、自分がログインしたことを確認した上で、認証コードを取得して、入力しましょう。

認証コードの入力画面 認証コードの入力画面

colab-sshモジュールが提供するlaunch_ssh_cloudflared関数を呼び出す

 次に先ほどインポートしたcolab-sshモジュールからlaunch_ssh_cloudflared関数をインポートします。

from colab_ssh import launch_ssh_cloudflared
launch_ssh_cloudflared(password='……')

lunach_ssh_cloudfalred関数をインポートして、呼び出す

launch_ssh_cloudflared関数のインポートと呼び出し launch_ssh_cloudflared関数のインポートと呼び出し

 launch_ssh_cloudflared関数を呼び出すと、上の画像のようなメッセージが表示されます。これは「cloudflaredをダウンロードして、その絶対パスをコピーして」「画像内に示されている構成をSSHの構成ファイルに貼り付けろ」「VS CodeからはXXXを指定すれば接続できるよ」と書いてあります。

 というわけで次ページでは、Google ColabにSSH接続できるように拡張機能をインストールしてみましょう。

       1|2 次のページへ

Copyright© Digital Advantage Corp. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。