JupyterHub(TLJH) on EC2 の各種備忘録
JupyterHubとTLJH
-
- マルチユーザ利用のJupyterNotebookをサポートするJupyterHub
-
- セットアップ方法は2種類
Kubernetes+HELMデプロイ(大規模用)
TLJH:The Littlest Jupyter Hub on VMデプロイ(小規模用)
https://jupyter.org/hub
https://tljh.jupyter.org/en/latest/
TLJH
小規模向け(users ~ 100)簡易実装のThe Littlest Jupyter Hub
セットアップ
-
- 各種環境のオフィシャルセットアップ方法がある
Installing on Digital Ocean
Installing on OVH
Installing on Jetstream
Installing on Google Cloud
Installing on Amazon Web Services
Installing on Azure
Installing on your own server
AWS版は、ubuntuベースのEC2で、セットアップスクリプトを仕掛けて起動するだけ
https://tljh.jupyter.org/en/latest/install/amazon.html
パスワード変更方法
- 以下URLで変更可能
http://[IP]/hub/auth/change-password
参考)
https://github.com/jupyterhub/the-littlest-jupyterhub/issues/481
ユーザだけTerminalを無効化する方法
jupyter_notebook_config.pyファイルで制御できる
手順
①jupyter notebook –generate-configでjupyter_notebook_config.py作成
②adminユーザの~home/.jupyter/にjupyter_notebook_config.pyが作成されるので、# c.NotebookApp.terminals_enabled = True の#を削除して有効化
③このファイルを/opt/tljh/user/etc/jupyter/にコピーして、コピー先の方だけc.NotebookApp.terminals_enabled = Falseに変更(元の方はそのまま)
④Jupyterのサーバを再起動(コントロールパネルから Stop My Server → Start My Serverする)
再起動されたユーザ用Notebookは、最新のconfigが読み込まれて、下記のように「Terminals Unavailable」となる
adminなど個別設定にしたい場合は、個々のホームにファイルを置いて~/.jupyter/jupyter_notebook_config.pyの設定で上書きされる
参考)
https://github.com/jupyterhub/the-littlest-jupyterhub/issues/373