🧑‍🎓

VS CodeでJupyterHubホストに接続する方法

2023/11/12に公開

はじめに

VS Codeは非常に使い勝手の良いコードエディターであり、Jupyter Notebookを実行するための拡張機能などもサポートされている。

VS CodeでJupyter Notebookを使う方法を紹介している記事はたくさんあるが、この記事では、大学や組織が用意してくれているJupyterHubをVS Codeから接続して、最高に使い勝手の良い疑似ローカルPython環境を簡単に作る手順を紹介していく。

対象読者

  • 所属大学や組織から利用可能なJupyterHubホストを提供されている方
  • ローカルでAnacondaなどのPython環境を用意するのが面倒 or 難しい方
  • JupyterHubの使用感に不満があり、VS Codeでさまざまな機能を使いたい方
  • Jupyter NotebookファイルをJupyterHubではなくローカルに置いておきたい方

手順

1. VS Codeのインストール

まず、VS Codeをインストールしていない人は、以下のURLから自分のOSに合ったファイルを選び、インストールする。
https://code.visualstudio.com/download

2. VS Code Extensionのインストール

次にVS Codeを起動し、Extensionsのタブを開く。
ここでjupyter hubと検索し、JupyterHubとの接続に必要な拡張機能をインストールする。

一緒に以下の画像のJupyter, Python, Japanese Language Pack for VS Codeの拡張機能もインストールすることをおすすめする。

これらはVS Code上でJupyter Notebookを表示するために必要となる。
Japanese Language Pack for VS Codeは日本語表示のため)

3. JupyterHubのアクセストークンを取得

上記の拡張機能を入れたら、VS Codeからは一旦離れてJupyterHubの操作に移る。

VS CodeでJupyterHubを使用するためには API Tokenを生成する必要がある。
これを行うには、アクセスしたいJupyterHub環境にログインする。

ログインしたら、コントロールパネルを開く。

コントロールパネルのTokenを開く。

任意のトークン名を記入し、Request new API tokenのボタンをクリックするとAPI Tokenが生成される。このトークンは後ほど使うため、コピーやメモをして保管する。

このとき、JupyterHubのベースURLもコピーしておくと後で楽になるので、コピーをおすすめする。

余談だが、クリップボード履歴を活用すると先程コピーしたAPIトークンも消えずに保持できる。
Windowsユーザーは、キーボードの【Windows ロゴ】キー+【V】キーを押すと、クリップボードの履歴を有効にできる。

4. VS CodeからJupyterHubホストに接続

再度、VS Codeに戻り、以下のキーボードショートカットでコマンドパレットを開く:
Ctrl + Shift + P (Windows と Linux)
または、
⌘ Command + Shift + P (Mac OS)

コマンドパレットでcreate jupyterと入力し、Create: New Jupyter Notebookをクリックする。

そうすると新しくJupyter Notebookファイルが作られる。

JupyterHubホストへの接続は以下のステップを追っていく。

  1. 作成したノートブックの右上のSelect Kernelをクリック
  2. 中央に出てきたメニューのSelect Another Kernelをクリック

  1. 既存のJupyterHubサーバー...を選択

  2. 以下のテンプレートを用いて作成したURLを入力

    【URLの作成】
    以下の3つをテンプレートに含める。

    • JupyterHubからコピーしてきたベースURL
    • JupyterHubのユーザー名
    • JupyterHubで生成したAPIトークン
テンプレート:
{ベースURL}/user/{ユーザー名}?token={APIトークン}

上記をテンプレートに挿入する場合、中括弧{}は省略し、以下の例のようになる。

例:
https://jupyter01.zenn-u.ac.jp:8000/user/name?token=hogehoge

  1. JupyterHubログイン時と同じユーザー名が入力されているか確認し、Enterを押す

  2. JupyterHubのログインパスワードを入力し、Enterを押す

  3. 任意のサーバー名を入力し、Enterを押す

  4. JupyterHubホストと接続がされたので、Pythonカーネルを選択

5. JupyterHubのPythonカーネルの動作確認

上記の手順を踏んだら、あとはPythonのコードを実行するだけ。

画像右上でPythonカーネルが選択されていることを確認し、
適当なコードを書いてCtrl + Enterでセルを実行し、正常に動作すれば今後も不自由なく使えるだろう。

おわりに

今回、VS CodeでJupyterHubホストに接続する方法を紹介したが、
個人的には、プログラミング初心者の大学生にこの環境設定をおすすめしたい。

なぜなら、初心者にとってAnacondaのインストールなどの環境構築はハードルが高いからである。

今では、多くの大学がJupyterHubなどの演習環境を学内サーバーに用意しており、学外からも自由に使用することができる。

大学のJupyterHubと自身のPCのVS Codeを接続すれば、煩雑な環境構築をせずとも擬似的にローカルでプログラミング環境を構築できるというわけだ。

また、VS Codeを使うことのメリットの一つとしてGitHub Copilotが利用できることが挙げられる。
GitHub Copilotのコード生成の精度は恐ろしく高く、プログラミング初心者にとっては、強力なサポートになるだろう。

この記事を読んだ方は、ぜひGitHub Copilotの活用も検討してみて欲しい。

Discussion