... | @@ -107,7 +107,7 @@ adminユーザで Moodleにログインする |
... | @@ -107,7 +107,7 @@ adminユーザで Moodleにログインする |
|
6. トークンを mod_lticontainer の設定画面の "**Settings of Dashboard and Charts**" / "**XML-RPC Token for Web services**" に設定する.
|
|
6. トークンを mod_lticontainer の設定画面の "**Settings of Dashboard and Charts**" / "**XML-RPC Token for Web services**" に設定する.
|
|
7. 設定が終わったら,LTI Editで一度保存を行うこと.**保存を行わないと設定が LTIに反映されない.**
|
|
7. 設定が終わったら,LTI Editで一度保存を行うこと.**保存を行わないと設定が LTIに反映されない.**
|
|
|
|
|
|
## 未サポート
|
|
### 未サポート
|
|
#### Moodle with CentOS7
|
|
#### Moodle with CentOS7
|
|
- **openssh-askpass** パッケージが必要.
|
|
- **openssh-askpass** パッケージが必要.
|
|
- podman-remote で --url オプションが使用できないので,docker をインストールする.
|
|
- podman-remote で --url オプションが使用できないので,docker をインストールする.
|
... | @@ -117,7 +117,7 @@ adminユーザで Moodleにログインする |
... | @@ -117,7 +117,7 @@ adminユーザで Moodleにログインする |
|
- どうしても3.9.0 以下で動かしたい場合は,以下のコマンドで **instructorcustomparameters** カラムを **longtext** に変換する.
|
|
- どうしても3.9.0 以下で動かしたい場合は,以下のコマンドで **instructorcustomparameters** カラムを **longtext** に変換する.
|
|
- **`alter table mdl_lti modify column instructorcustomparameters longtext;`**
|
|
- **`alter table mdl_lti modify column instructorcustomparameters longtext;`**
|
|
|
|
|
|
## 操作(Tab)
|
|
# 操作(Tab)
|
|
### Over View
|
|
### Over View
|
|
- 現在の設定を表示
|
|
- 現在の設定を表示
|
|
- **Edit settings** から設定画面に移動可能.
|
|
- **Edit settings** から設定画面に移動可能.
|
... | @@ -128,29 +128,21 @@ adminユーザで Moodleにログインする |
... | @@ -128,29 +128,21 @@ adminユーザで Moodleにログインする |
|
![](uploads/71461918d61f7f5976847e66412d8525/dashboard.png){width="70%"}
|
|
![](uploads/71461918d61f7f5976847e66412d8525/dashboard.png){width="70%"}
|
|
|
|
|
|
### Charts
|
|
### Charts
|
|
|
|
|
|
- Charts 機能を使用するには [**Ltictr_Proxy**](https://gitlab.nsl.tuis.ac.jp/iseki/lticontainerspawner/-/wikis/md/Ltictr_Proxy(J)) を動かさないといけない.
|
|
- Charts 機能を使用するには [**Ltictr_Proxy**](https://gitlab.nsl.tuis.ac.jp/iseki/lticontainerspawner/-/wikis/md/Ltictr_Proxy(J)) を動かさないといけない.
|
|
|
|
|
|
#### 直近 Charts
|
|
#### 直近 Charts
|
|
|
|
|
|
- デフォルトで直近 90分間のチャートを表示.
|
|
- デフォルトで直近 90分間のチャートを表示.
|
|
|
|
|
|
![](uploads/6045a52a9a06a10811d11a499099fe5b/realtime_per_task_BK.png){width="30%"}
|
|
![](uploads/6045a52a9a06a10811d11a499099fe5b/realtime_per_task_BK.png){width="30%"}
|
|
|
|
|
|
#### 任意の期間の Charts
|
|
#### 任意の期間の Charts
|
|
|
|
|
|
- デフォルトで過去7日間のチャートを表示.
|
|
- デフォルトで過去7日間のチャートを表示.
|
|
|
|
|
|
![](uploads/ef178e4354c770b7d65782996648be46/per_user_BK.png){width="30%"} ![](uploads/7a9d95674afa32ef40c07727223acaef/per_task_BK.png){width="30%"}
|
|
![](uploads/ef178e4354c770b7d65782996648be46/per_user_BK.png){width="30%"} ![](uploads/7a9d95674afa32ef40c07727223acaef/per_task_BK.png){width="30%"}
|
|
|
|
|
|
### LTI Connections
|
|
### LTI Connections
|
|
|
|
|
|
- 制御下に置く,LTIコネクション(外部ツールのインスタンス)の一覧
|
|
- 制御下に置く,LTIコネクション(外部ツールのインスタンス)の一覧
|
|
- **Edit settings** をクリックすると,制御から外す(表示しない)ネクションを指定する画面に移動.
|
|
- **Edit settings** をクリックすると,制御から外す(表示しない)ネクションを指定する画面に移動.
|
|
- 表示されている LTI Nameをクリックするこことにより **LTI Edit** を表示.
|
|
- 表示されている LTI Nameをクリックするこことにより **LTI Edit** を表示.
|
|
|
|
|
|
### Volumes
|
|
### Volumes
|
|
|
|
|
|
- JupyterHubホストで使用しているボリューム一覧(そのコースで使用しているボリュームのみ)とその削除.
|
|
- JupyterHubホストで使用しているボリューム一覧(そのコースで使用しているボリュームのみ)とその削除.
|
|
- Personal volume は操作対象外.
|
|
- Personal volume は操作対象外.
|
|
- ここで表示されるボリューム名は,省略された名前.
|
|
- ここで表示されるボリューム名は,省略された名前.
|
... | @@ -158,17 +150,13 @@ adminユーザで Moodleにログインする |
... | @@ -158,17 +150,13 @@ adminユーザで Moodleにログインする |
|
- 例:**lms_vol_abc_98_el.mml.tuis.ac.jp**
|
|
- 例:**lms_vol_abc_98_el.mml.tuis.ac.jp**
|
|
|
|
|
|
### LTI Edit
|
|
### LTI Edit
|
|
|
|
|
|
- LTI(外部ツール)インスタンスのカスタムパラメータを書き換える.
|
|
- LTI(外部ツール)インスタンスのカスタムパラメータを書き換える.
|
|
- 通常は DB上のデータを書き換えるだけ.
|
|
- 通常は DB上のデータを書き換えるだけ.
|
|
- カスタムパラメータ自体は,JupyterHubに実際に接続(ログイン)した時に送られる.
|
|
- カスタムパラメータ自体は,JupyterHubに実際に接続(ログイン)した時に送られる.
|
|
- 設定により,データを更新したタイミングで Dockerのボリュームを作成するように設定することも可能.
|
|
- 設定により,データを更新したタイミングで Dockerのボリュームを作成するように設定することも可能.
|
|
|
|
|
|
|
|
|
|
* LTI カスタムパラメータの設定画面 ![LTI_Edit](uploads/97bfc80a4377e7d7045c08f381692337/LTI_Edit.png)
|
|
* LTI カスタムパラメータの設定画面 ![LTI_Edit](uploads/97bfc80a4377e7d7045c08f381692337/LTI_Edit.png)
|
|
|
|
|
|
#### Accessible users
|
|
#### Accessible users
|
|
|
|
|
|
- LTIカスタムパラメータ **lms_users** に対応.
|
|
- LTIカスタムパラメータ **lms_users** に対応.
|
|
- Volumeセクションで記述したボリュームをマウントできるユーザを指定する.
|
|
- Volumeセクションで記述したボリュームをマウントできるユーザを指定する.
|
|
- ユーザはMoodleのユーザ名を,カンマ(,)または空白で区切って記述する.
|
|
- ユーザはMoodleのユーザ名を,カンマ(,)または空白で区切って記述する.
|
... | @@ -176,7 +164,6 @@ adminユーザで Moodleにログインする |
... | @@ -176,7 +164,6 @@ adminユーザで Moodleにログインする |
|
- アスタリスク(**\***)は全てのユーザがボリュームをマウントできることを表す.
|
|
- アスタリスク(**\***)は全てのユーザがボリュームをマウントできることを表す.
|
|
|
|
|
|
#### Teachers
|
|
#### Teachers
|
|
|
|
|
|
- LTIカスタムパラメータ **lms_teachers** に対応.
|
|
- LTIカスタムパラメータ **lms_teachers** に対応.
|
|
- コースの教師を指定する.指定の仕方は,**lms_user** と同じ.アスタリスク(**\***)も使用できるが,使う意味はない.(全員教師?)
|
|
- コースの教師を指定する.指定の仕方は,**lms_user** と同じ.アスタリスク(**\***)も使用できるが,使う意味はない.(全員教師?)
|
|
- 途中で教師のメンバを変更した場合は,**Task volume** および **Submit volume** のオーナが教師グループから外れる可能性があるので,注意が必要.
|
|
- 途中で教師のメンバを変更した場合は,**Task volume** および **Submit volume** のオーナが教師グループから外れる可能性があるので,注意が必要.
|
... | @@ -192,25 +179,21 @@ adminユーザで Moodleにログインする |
... | @@ -192,25 +179,21 @@ adminユーザで Moodleにログインする |
|
- 環境変数 **GRANT_SUDO** が **no** であっても,コンテナ内で **sudo** コマンドが使用できる.
|
|
- 環境変数 **GRANT_SUDO** が **no** であっても,コンテナ内で **sudo** コマンドが使用できる.
|
|
|
|
|
|
#### Container image
|
|
#### Container image
|
|
|
|
|
|
- LTIのカスタムパラメータ **lms_image** に対応.
|
|
- LTIのカスタムパラメータ **lms_image** に対応.
|
|
- 起動するコンテイメージを指定する.デフォルトの場合は,設定ファイルで指定したイメージ.
|
|
- 起動するコンテイメージを指定する.デフォルトの場合は,設定ファイルで指定したイメージ.
|
|
- Jupyter Lab/Notebook 以外のイメージを選択した場合は,高い確率で起動不能となる.
|
|
- Jupyter Lab/Notebook 以外のイメージを選択した場合は,高い確率で起動不能となる.
|
|
- 設定の **Image name filter words** で表示するコンテナイメージ名にフィルターを掛けることが可能.
|
|
- 設定の **Image name filter words** で表示するコンテナイメージ名にフィルターを掛けることが可能.
|
|
|
|
|
|
#### Default URL
|
|
#### Default URL
|
|
|
|
|
|
- LTIカスタムパラメータ **lms_defurl** に対応.
|
|
- LTIカスタムパラメータ **lms_defurl** に対応.
|
|
- Lab か Notebook のどちらにアクセスするかを指定する.デフォルトは設定ファイルで指定したURL.
|
|
- Lab か Notebook のどちらにアクセスするかを指定する.デフォルトは設定ファイルで指定したURL.
|
|
- Lab を指定した場合,起動するコンテイメージが Labをサポートしていないと 404 not found になる.
|
|
- Lab を指定した場合,起動するコンテイメージが Labをサポートしていないと 404 not found になる.
|
|
|
|
|
|
#### CPU Limit
|
|
#### CPU Limit
|
|
|
|
|
|
- **lms_cpulimit** に対応.
|
|
- **lms_cpulimit** に対応.
|
|
- コンテナ内での CPU数の上限.
|
|
- コンテナ内での CPU数の上限.
|
|
|
|
|
|
#### Memory Limit
|
|
#### Memory Limit
|
|
|
|
|
|
- **lms_memlimit** に対応.
|
|
- **lms_memlimit** に対応.
|
|
- コンテナ内での メモリの上限.
|
|
- コンテナ内での メモリの上限.
|
|
- CPU Limit は 0.1 でも結構動くが,メモリ 120Mぐらいだと JupyterHub/singleuser のコンテナは起動しない.
|
|
- CPU Limit は 0.1 でも結構動くが,メモリ 120Mぐらいだと JupyterHub/singleuser のコンテナは起動しない.
|
... | @@ -219,7 +202,6 @@ adminユーザで Moodleにログインする |
... | @@ -219,7 +202,6 @@ adminユーザで Moodleにログインする |
|
- mod_lticontainer では,余裕を考えてきりのいい 200M から表示.
|
|
- mod_lticontainer では,余裕を考えてきりのいい 200M から表示.
|
|
|
|
|
|
#### Volume セクション
|
|
#### Volume セクション
|
|
|
|
|
|
- **Task volume**, **Submit volume** はユーザが JupyterHub にアクセスしたときに(許可があれば)マウントされる.
|
|
- **Task volume**, **Submit volume** はユーザが JupyterHub にアクセスしたときに(許可があれば)マウントされる.
|
|
- アクセス(マウント)可能ユーザの書き方は **lms_users**(Accessible users) と同じ.ただしデフォルト(空欄)では,全てのユーザが許可される.
|
|
- アクセス(マウント)可能ユーザの書き方は **lms_users**(Accessible users) と同じ.ただしデフォルト(空欄)では,全てのユーザが許可される.
|
|
- **lms_users**(Accessible users)よりも,ここで指定される個々の許可ユーザの方が優先される.
|
|
- **lms_users**(Accessible users)よりも,ここで指定される個々の許可ユーザの方が優先される.
|
... | @@ -245,14 +227,12 @@ adminユーザで Moodleにログインする |
... | @@ -245,14 +227,12 @@ adminユーザで Moodleにログインする |
|
- ボリュームのアクセス名の先頭に マイナス(**\-**) を付けた場合,教師に対してのみアクセス用のリンクが張られる(-は削除されてリンクが張られる)
|
|
- ボリュームのアクセス名の先頭に マイナス(**\-**) を付けた場合,教師に対してのみアクセス用のリンクが張られる(-は削除されてリンクが張られる)
|
|
|
|
|
|
##### Task volume
|
|
##### Task volume
|
|
|
|
|
|
- LTIカスタムパラメータの **lms_vol\_ボリューム名=アクセス名: 許可ユーザ** に対応.
|
|
- LTIカスタムパラメータの **lms_vol\_ボリューム名=アクセス名: 許可ユーザ** に対応.
|
|
- 課題提示用ボリューム.教師は書き込み可能だが,学生は読み出しのみ可能.
|
|
- 課題提示用ボリューム.教師は書き込み可能だが,学生は読み出しのみ可能.
|
|
- Volumes タブで削除可能
|
|
- Volumes タブで削除可能
|
|
- パーミッション:rwxrwsr-x, オーナ:一番最初にアクセスした教師,グループ:教師
|
|
- パーミッション:rwxrwsr-x, オーナ:一番最初にアクセスした教師,グループ:教師
|
|
|
|
|
|
##### Submit volume
|
|
##### Submit volume
|
|
|
|
|
|
- LTIカスタムパラメータの **lms_sub\_ボリューム名=アクセス名: 許可ユーザ** に対応.
|
|
- LTIカスタムパラメータの **lms_sub\_ボリューム名=アクセス名: 許可ユーザ** に対応.
|
|
- 課題回収用ボリューム.教師は読み出し(書き込み,削除:これはオーナのみ)が可能だが,学生は課題の提出(書き込み)と自分の提出した課題にのみアクセス(読み出し,削除)可能.
|
|
- 課題回収用ボリューム.教師は読み出し(書き込み,削除:これはオーナのみ)が可能だが,学生は課題の提出(書き込み)と自分の提出した課題にのみアクセス(読み出し,削除)可能.
|
|
- ただし,教師が Submit volume 内でコピーしたものは,学生でもアクセスできる.
|
|
- ただし,教師が Submit volume 内でコピーしたものは,学生でもアクセスできる.
|
... | @@ -260,7 +240,6 @@ adminユーザで Moodleにログインする |
... | @@ -260,7 +240,6 @@ adminユーザで Moodleにログインする |
|
- パーミッション:rwxrwsrwt,オーナ:一番最初にアクセスした教師,グループ:教師
|
|
- パーミッション:rwxrwsrwt,オーナ:一番最初にアクセスした教師,グループ:教師
|
|
|
|
|
|
##### Personal volume
|
|
##### Personal volume
|
|
|
|
|
|
- LTIカスタムパラメータの **lms_prs\_ボリューム名=アクセス名: 許可ユーザ** に対応.
|
|
- LTIカスタムパラメータの **lms_prs\_ボリューム名=アクセス名: 許可ユーザ** に対応.
|
|
- これはユーザの専用ボリュームに恒久的に作成されるディレクトリである.
|
|
- これはユーザの専用ボリュームに恒久的に作成されるディレクトリである.
|
|
- ユーザ本人しかアクセスできない.(コンテナ起動時の管理プロセスを除く)
|
|
- ユーザ本人しかアクセスできない.(コンテナ起動時の管理プロセスを除く)
|
... | @@ -273,7 +252,6 @@ adminユーザで Moodleにログインする |
... | @@ -273,7 +252,6 @@ adminユーザで Moodleにログインする |
|
- Task volume と同じ名前(ボリューム名)にしても,コピーは行われない.
|
|
- Task volume と同じ名前(ボリューム名)にしても,コピーは行われない.
|
|
|
|
|
|
#### その他のカスタムパラメータ
|
|
#### その他のカスタムパラメータ
|
|
|
|
|
|
- **lms_sessionifo**
|
|
- **lms_sessionifo**
|
|
- このモジュールのインスタンスIDと対応する LTIコネクション(外部ツール)のインスタンスのIDが自動的に設定される.例)lms_sessionifo=6,13
|
|
- このモジュールのインスタンスIDと対応する LTIコネクション(外部ツール)のインスタンスのIDが自動的に設定される.例)lms_sessionifo=6,13
|
|
- ユーザが気にすることは何もない.このデータは実際には [**Feserver**](https://gitlab.nsl.tuis.ac.jp/iseki/lticontainerspawner/-/wikis/md/Feserver(J)) の feplg_nbwsモジュール または [**Ltictr_Proxy**](https://gitlab.nsl.tuis.ac.jp/iseki/lticontainerspawner/-/wikis/md/Ltictr_Proxy(J)) に送られる.
|
|
- ユーザが気にすることは何もない.このデータは実際には [**Feserver**](https://gitlab.nsl.tuis.ac.jp/iseki/lticontainerspawner/-/wikis/md/Feserver(J)) の feplg_nbwsモジュール または [**Ltictr_Proxy**](https://gitlab.nsl.tuis.ac.jp/iseki/lticontainerspawner/-/wikis/md/Ltictr_Proxy(J)) に送られる.
|
... | @@ -297,13 +275,10 @@ adminユーザで Moodleにログインする |
... | @@ -297,13 +275,10 @@ adminユーザで Moodleにログインする |
|
- このモジュールが使用するもの以外の カスタムパラメータには一切影響を及ぼさない.
|
|
- このモジュールが使用するもの以外の カスタムパラメータには一切影響を及ぼさない.
|
|
|
|
|
|
#### LTIカスタムパラメータ表示
|
|
#### LTIカスタムパラメータ表示
|
|
|
|
|
|
- 設定の **Show custom parameters** で Yes を選択すると,現在のLTIカスタムパラメータが表示される.
|
|
- 設定の **Show custom parameters** で Yes を選択すると,現在のLTIカスタムパラメータが表示される.
|
|
|
|
|
|
## 運用例
|
|
# 運用例
|
|
|
|
|
|
### 課題の作成と回収
|
|
### 課題の作成と回収
|
|
|
|
|
|
##### 課題の作成
|
|
##### 課題の作成
|
|
|
|
|
|
1. 設定
|
|
1. 設定
|
... | @@ -331,9 +306,7 @@ adminユーザで Moodleにログインする |
... | @@ -331,9 +306,7 @@ adminユーザで Moodleにログインする |
|
- ファイル提出の際には submit コマンドが使用できる.submit はファイル名にユーザ名を自動的に付け加えて,指定されたフォルダにコピーする.
|
|
- ファイル提出の際には submit コマンドが使用できる.submit はファイル名にユーザ名を自動的に付け加えて,指定されたフォルダにコピーする.
|
|
- 例)!submit kadai-1.ipynb
|
|
- 例)!submit kadai-1.ipynb
|
|
|
|
|
|
## 参考
|
|
# 参考
|
|
|
|
|
|
### [Moodle Moot 2022](https://moodlejapan.org/course/view.php?id=89)
|
|
### [Moodle Moot 2022](https://moodlejapan.org/course/view.php?id=89)
|
|
|
|
|
|
- Moodle Moot 2022 での発表スライド:[Moodle_JupyterHub.pdf](uploads/437b4e14fd3a3440bf4e2d9b001ce4c7/Moodle_JupyterHub.pdf) (2022/2/19)
|
|
- Moodle Moot 2022 での発表スライド:[Moodle_JupyterHub.pdf](uploads/437b4e14fd3a3440bf4e2d9b001ce4c7/Moodle_JupyterHub.pdf) (2022/2/19)
|
|
- 発表時のビデオもあります(デモで最後に Chartsを表示するのを忘れてしまった!) |
|
- 発表時のビデオもあります(デモで最後に Chartsを表示するのを忘れてしまった!) |
|
\ No newline at end of file |
|
|