#author("2024-09-02T07:17:03+00:00","default:iseki","iseki")
#author("2024-09-02T07:18:31+00:00","default:iseki","iseki")
* LTIDockerSpawner [#s3c5ef6a]
** Todo Works
- JupyterLab のグループが rootになる(TEACHER になるべき)
- JupyterLab コンテナが早期に終了する(health が関係?)
- Moodle のグラフ選択の見直し

** Over View
- 旧 MDLDockerSpawner : LTI コンシューマであれば Moodle以外でも使えそうなので,名称を変更.(2021 9/17)

- gitlab: https://gitlab.nsl.tuis.ac.jp/iseki/lticontainerspawner

- [[Moodle]] (などの LMS) と [[JupyterHub]] の連携をとるための Spawner クラス.
- [[SystemUserSpawner>../SystemUserSpawner]] クラスを継承.

- see also. [[Moodle+JupyterHub]],  and  [[対応Moodleモジュール(mod_lticontainer)>mod_lticontainer]]
- see also. [[LTIContainerSpawner>JupyterHub/LTIContainerSpawner]], [[LTIPodmanSpawner>JupyterHub/LTIPodmanSpawner]]





** 機能 [#o44dc5d5]
- ユーザグループ機能の完全サポート
- Moodle(その他の LTIコンシューマ)からの LTI カスタムパラメータを受信して動作.
- 環境変数を使用した start.sh による Jupyter Lab/Notebook コンテナの動作制御.

- 教師ユーザと学生ユーザの分離.
- ユーザ毎の Volume のマウント,及びアクセス権(教師と学生)の設定.
-- 教材の配布と収集に便利
- Volume への任意名でのアクセス.
- 起動イメージのリモート選択.Jupyter Lab/Notebook でないイメージを選択すると漏れなく死にます :-o 
- 起動 URL(Lab/Notebook)の選択.
- %%iframe サポート%%  一部のみサポート:動くための条件がシビア(tornado のバージョンやブラウザの種類によって条件が変わる)
- CPU/Momery の制限


*** Volume 名に関する制約 [#q7b847fc]
- ボリューム名には小文字のアルファベット・数字以外は使用できない.特殊文字も使用できない.
- 大文字のボリューム名は小文字に変換される.
- 同じボリューム名・アクセス名を指定した場合は,最初の物が優先される.
- 一個の JupyterHub に対して複数の コンシューマからのアクセスをサポート
- アクセス名の先頭に - を付けた場合は,教師ユーザのみシンボリックリンクが張られる
- 注)アクセス名:ボリュームへ張られるシンボリックリンクの名前 


*** 処理可能な LTI カスタムパラメーター [#t25f1f31]
- lms_user=
- lms_teacher=
- lms_image=
- lms_defurl =
- lms_cpulimit =
- lms_memlimit =
- lms_vol_[volume name] =
- lms_sub_[volume name] =
- lms_prs_[volume name] =

- 自動設定
-- lms_iframe=
-- lms_sessioninfo=

- 未使用
-- (lms_grname=)
-- (lms_option=)


*** JupyterHub システム側にユーザがいない場合 [#w133a205]
- Internal Server Error になる


*** LTI Module [#e91ba7fb]
- [[LTI]]

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 ページ一覧 検索 最終更新   ヘルプ   最終更新のRSS