[k8s]JupyterHubのデフォルトをJupyterLabに設定する

2019.06.10

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

コンニチハ、千葉です。

Kubernetes上にJupyterHubをデプロイしました。

https://dev.classmethod.jp/etc/jupyterhub-deploy-on-k8s/

今回、この環境のデフォルトUIを、JupyterLabに変更してみます。JupyterLabとは従来のインターフェイースに変わる新しいUIです。

やってみた

まず、現在のUIです。これは、従来のUIになります。

変更方法は簡単です。JupyterHub環境デプロイ時に指定するconfig.yamlを修正します。 具体的には、以下の内容を追加します。

singleuser:
  defaultUrl: "/lab"

hub:
  extraConfig:
    jupyterlab: |
      c.Spawner.cmd = ['jupyter-labhub']

以上です。超簡単ですね。では、この設定にて再度、JupyterHubのデプロイコマンドを実行します。

$ RELEASE=jhub
$ NAMESPACE=jhub
 
$ helm upgrade --install $RELEASE jupyterhub/jupyterhub \
  --namespace $NAMESPACE  \
  --version=0.8.2 \
  --values config.yaml

では、ログインして確認してみましょう。反映させるためには今起動しているコンテナを再起動させる必要があったので、一度自分のコンテナを停止させてみました。

再度ログインすると、JupyterLabのUIに変わっていることが確認できました。

簡単に変更できました。

最後に

UIの変更は、yamlを定義するだけで対応できました。とても簡単でした。Kubernetesのエコシステムは、かなーり便利ですね。

参考

https://zero-to-jupyterhub.readthedocs.io/en/latest/user-environment.html#use-jupyterlab-by-default