#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]]