9: 2021-10-03 (日) 20:14:28 iseki |
10: 2021-10-15 (金) 11:10:04 iseki |
| | | |
| **** Webサービス [#k4138c47] | | **** Webサービス [#k4138c47] |
| + | - Option |
| - Feserver からの XML-RPC を受け入れて,データをDBに格納する. | | - Feserver からの XML-RPC を受け入れて,データをDBに格納する. |
| -- データ収集を行わない(Feserverを使用しない)なら,不必要 | | -- データ収集を行わない(Feserverを使用しない)なら,不必要 |
| | | |
| **** [[Docker]] [#cd2ef212] | | **** [[Docker]] [#cd2ef212] |
- | - [[LTIDockerSpawner>JupyterHub/LTIDockerSpawner]] を使用 | |
- | | |
| - CentOS8 | | - CentOS8 |
| (base) # dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo | | (base) # dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo |
| | | |
| **** [[Podman]] [#k2bdffda] | | **** [[Podman]] [#k2bdffda] |
- | - [[LTIPodmanSpawner>JupyterHub/LTIPodmanSpawner]] を使用 | |
- | | |
| - CentOS8 | | - CentOS8 |
| (base) # dnf -y install podman | | (base) # dnf -y install podman |
| #br | | #br |
| | | |
- | *** [[JupyterHub]]/[[SystemUserSpawner>JupyterHub/SystemUserSpawner]] [#z52a6900] | + | *** [[JupyterHub]] [#z52a6900] |
| **** [[JupyterHub]] [#m57f62f0] | | **** [[JupyterHub]] [#m57f62f0] |
| (base) # conda create -n jupyterhub python=3.8 -y | | (base) # conda create -n jupyterhub python=3.8 -y |
| | | |
| **** [[SystemUserSpawner>JupyterHub/SystemUserSpawner]] [#m07110de] | | **** [[SystemUserSpawner>JupyterHub/SystemUserSpawner]] [#m07110de] |
- | - JupyterHub の DockerSpawner を継承. | + | - ''Container として Docker を使用する場合に必要.Podman を使用する場合は不要.'' |
- | -- システムのユーザを使用可能. | + | |
- | -- システムのユーザのホーム領域をマウント可能. | + | |
| | | |
- | - 2021 7/12(またはそれ以降) 版推奨 | + | -- JupyterHub の DockerSpawner を継承. |
- | - https://github.com/jupyterhub/dockerspawner/blob/master/dockerspawner/systemuserspawner.py | + | --- システムのユーザを使用可能. |
- | - JupyterHub のインストールで,一緒にインストールされる.(バージョンが古い場合は手動インストール) | + | --- システムのユーザのホーム領域をマウント可能. |
| | | |
- | - SystemUserSpawner を動かすには /etc/passwd(/etc/group) 情報が必要 | + | -- 2021 7/12(またはそれ以降) 版推奨 |
| + | -- https://github.com/jupyterhub/dockerspawner/blob/master/dockerspawner/systemuserspawner.py |
| + | -- JupyterHub のインストールで,一緒にインストールされる.(バージョンが古い場合は手動インストール) |
| + | #br |
| + | *** NSS [#x24645ee] |
| + | - ユーザ情報として /etc/passwd(/etc/group) の情報が必要 |
| + | - システム(Containerを動かすホスト上)のユーザでなくても良い. |
| -- LDAP か下記の altfiles を使用する | | -- LDAP か下記の altfiles を使用する |
| #br | | #br |
| group: files altfiles | | group: files altfiles |
| - ユーザアカウントの整合性を取る. | | - ユーザアカウントの整合性を取る. |
| + | -- システム(Containerを動かすホスト上)のユーザとユーザ名,ユーザIDが被っていないかチェックする. |
| #br | | #br |
| | | |
- | **** [[LTI]] [#g284e3bf] | + | *** [[LTI]] [#g284e3bf] |
| - Moodle と連携する為の 認証モジュール(Moodleの外部サービスを使用) | | - Moodle と連携する為の 認証モジュール(Moodleの外部サービスを使用) |
| - 先に authlib を入れておく. | | - 先に authlib を入れておく. |
| #br | | #br |
| | | |
- | **** cull_idle_servers.py (option)[#n8a3f52c] | + | *** Culler(option) [#w04c68db] |
| - オプション機能.無くても良い. | | - オプション機能.無くても良い. |
- | -- 使用しない場合は,LTIDockerSpawner/LTIPodmanSpawner の設定ファイルの該当部分をコメントアウトする. | + | - 接続の切れた docker コンテナを削除する |
| + | - 使用しない場合は,LTIDockerSpawner/LTIPodmanSpawner の設定ファイルの該当部分をコメントアウトする. |
| + | -- [[cull_idle_servers>JupyterHub/DockerSpawner#zc9428f7]] |
| | | |
- | - [[cull_idle_servers>JupyterHub/DockerSpawner#zc9428f7]] | + | #br |
- | - 接続の切れた docker コンテナを削除 | + | |
| | | |
| + | **** cull_idle_servers.py [#n8a3f52c] |
| - https://github.com/jupyterhub/jupyterhub/tree/a6b7e303df03865d6420f6bccdf627b39f1d0dc1/examples/cull-idle | | - https://github.com/jupyterhub/jupyterhub/tree/a6b7e303df03865d6420f6bccdf627b39f1d0dc1/examples/cull-idle |
| -- 色々と試した中ではこれが一番良かった. | | -- 色々と試した中ではこれが一番良かった. |
| - 起動イメージのリモート選択.表示名のフィルタリング.Jupyter Lab/Notebook でないイメージを選択すると漏れなく死にます :-o | | - 起動イメージのリモート選択.表示名のフィルタリング.Jupyter Lab/Notebook でないイメージを選択すると漏れなく死にます :-o |
| - 起動 URL(Lab/Notebook)の選択. | | - 起動 URL(Lab/Notebook)の選択. |
- | - %%iframe サポート%% 動くための条件がシビア(tornado のバージョンやブラウザの種類によって条件が変わる) | + | - %%iframe サポート%% 一部のみサポート:動くための条件がシビア(tornado のバージョンやブラウザの種類によって条件が変わる) |
| - CPU/Momery の制限 | | - CPU/Momery の制限 |
| #br | | #br |
| - https://gitlab.nsl.tuis.ac.jp/iseki/mod_ltids | | - https://gitlab.nsl.tuis.ac.jp/iseki/mod_ltids |
| | | |
- | - MDLDockerSpawner サポート用 Moodleモジュール | + | - MDLDockerSpawner/LTIPodmanSpawner サポート用 Moodleモジュール |
| | | |
| - docker のリモート制御について | | - docker のリモート制御について |
| **** 機能 [#m538ed2a] | | **** 機能 [#m538ed2a] |
| - LTI のカスタムパラメータ管理 | | - LTI のカスタムパラメータ管理 |
- | - Docker のリモート制御 | + | - Docker/Podman のリモート制御 |
| -- イメージの一覧の取得 | | -- イメージの一覧の取得 |
| -- Volume 管理(作成,表示,削除) | | -- Volume 管理(作成,表示,削除) |
| | | |
| #br | | #br |
| + | |
| + | **** [[Docker]] を使う場合 [#d9c2f77c] |
| + | + ユーザのホームディレクトリについて,ユーザが書き込み可能であること. |
| + | ++ CentOS8 で嵌った.ユーザを dockerにしたんだが,dockerのホームディレクトリなのに,dockerが書き込み可能でなかった. |
| + | + ユーザが docker のグループに属していること(UNIXソケットファイルにアクセスするため). |
| + | + ユーザのログインシェルは不要 |
| + | #br |
| + | |
| **** [[Podman]] を使う場合 [#nd0d330c] | | **** [[Podman]] を使う場合 [#nd0d330c] |
| - docker と同じようにする. | | - docker と同じようにする. |