flagflag  If you want to see English page, please click "English" Button at Left.
6: 2021-10-02 (土) 15:06:01 iseki ソース 7: 2021-10-02 (土) 18:57:11 iseki ソース
Line 10: Line 10:
- [[LTI Hack>Moodle/Moodle-LTI]] - [[LTI Hack>Moodle/Moodle-LTI]]
- [[LTIDockerSpawner>JupyterHub/LTIDockerS​pawner]] - [[LTIDockerSpawner>JupyterHub/LTIDockerS​pawner]]
 +- [[LTIPodmanSpawner>JupyterHub/LTIPodmanS​pawner]]
 +
- [[mod_ltids]] - [[mod_ltids]]
Line 21: Line 23:
- JupyterHub が動くホストとは別のホストでもOK - JupyterHub が動くホストとは別のホストでもOK
- 外部サービス,Webサービスを使用する. - 外部サービス,Webサービスを使用する.
 +
 +- LTIDockerSpawner を使用する場合はMoodle ホスト側に,少なくとも ''docker-ce-cli''/docker-cli がインストールされている必要がある.
 +- LTIPodmanSpawner を使用する場合はMoodle ホスト側に,少なくとも ''podman-remote'' がインストールされている必要がある.
 +#br
 +
#br #br
Line 31: Line 38:
**** Webサービス [#k4138c47] **** Webサービス [#k4138c47]
- Feserver からの XML-RPC を受け入れて,データをDBに格納する. - Feserver からの XML-RPC を受け入れて,データをDBに格納する.
 +-- データ収集を行わない(Feserverを使用しない)なら,不必要
#br #br
-*** [[Docker]] [#cd2ef212] +*** Container [#od457509] 
-**** CentOS8 [#ufeb99f8]+- Docker または Podman が使用可能 
 +#br 
 + 
 +**** [[Docker]] [#cd2ef212] 
 +- [[LTIDockerSpawner>JupyterHub/LTIDockerSp​awner]] を使用 
 + 
 +- 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
 (base) # dnf -y install docker-ce docker-ce-cli containerd.io --nobest --allowerasing  (base) # dnf -y install docker-ce docker-ce-cli containerd.io --nobest --allowerasing
Line 41: Line 55:
 (base) # docker pull jupyterhub/singleuser  (base) # docker pull jupyterhub/singleuser
 (base) # docker pull jupyter/datascience-notebook  (base) # docker pull jupyter/datascience-notebook
 +#br
 +
 +**** [[Podman]] [#k2bdffda]
 +- [[LTIPodmanSpawner>JupyterHub/LTIPodmanS​pawner]] を使用
 +
 +- CentOS8
 + (base) # dnf -y install podman
 + (base) # dnf -y install podman-remote
 + (base) # dnf -y install podman-docker
 +
#br #br
Line 80: Line 104:
**** [[altfiles>NSS]] [#n90bdca5] **** [[altfiles>NSS]] [#n90bdca5]
 +- ユーザの passwd, grouop 情報が必要
- SystemUserSpawner 用の [[NSS]] を使用した システムのユーザ情報の入手方法([[LDAP]] を使用する手もある) - SystemUserSpawner 用の [[NSS]] を使用した システムのユーザ情報の入手方法([[LDAP]] を使用する手もある)
- getent passwd と getent group で情報が取れるようになれば OK - getent passwd と getent group で情報が取れるようになれば OK
Line 129: Line 154:
#br #br
-**** cull_idle_servers.py [#n8a3f52c]+**** cull_idle_servers.py (option)[#n8a3f52c] 
 +- オプション機能.無くても良い. 
 +-- 使用しない場合は,LTIDockerSpawner/LTIPodmanSpawner の設定ファイルの該当部分をコメントアウトする. 
- [[cull_idle_servers>JupyterHub/DockerSpa​wner#zc9428f7]] - [[cull_idle_servers>JupyterHub/DockerSpa​wner#zc9428f7]]
- 接続の切れた docker コンテナを削除 - 接続の切れた docker コンテナを削除
- https://github.com/jupyterhub/jupyterhub​/tree/a6b7e303df03865d6420f6bccdf627b39f​1d0dc1/examples/cull-idle - https://github.com/jupyterhub/jupyterhub​/tree/a6b7e303df03865d6420f6bccdf627b39f​1d0dc1/examples/cull-idle
 +-- 色々と試した中ではこれが一番良かった.
- wget で DLして /usr/local/bin にコピー - wget で DLして /usr/local/bin にコピー
 pip3 install pycurl  pip3 install pycurl
Line 149: Line 178:
#br #br
-*** [[LTIDockerSpawner>JupyterHub/LTIDockerSpawner]] [#k758b918+*** [[LTIContainerSpawner>JupyterHub/LTIContainerSpawner]] [#va019dd5
-- https://gitlab.nsl.tuis.ac.jp/iseki/ltidockerspawner+- https://gitlab.nsl.tuis.ac.jp/iseki/lticontainerspawner 
 +- [[Moodle]](その他の LTIコンシューマ) と [[JupyterHub]] の連携をとるための Spawner クラス.
-- [[Moodle]] [[JupyterHub]] の連携をとるための Spawner クラス.+- LTIContainerSpawner は LTIDockerSpawner と LTIPodmanSpawner を纏めた呼び方. 
 +-- LTIContainerSpawner = LTIDockerSpawner + LTIPodmanSpawner 
 +#br 
 + 
 +**** [[LTIDockerSpawner>JupyterHub/LTIDockerSpa​wner]] [#kfa79499]
- [[SystemUserSpawner>JupyterHub/SystemUse​rSpawner]] クラスを継承. - [[SystemUserSpawner>JupyterHub/SystemUse​rSpawner]] クラスを継承.
-- 現時点(2021/08)では jupyterhub_config.py  の中で実装+- 現時点(2021/10)では ''etc/jupyterhub_docker_config.py'' の中で実装 
 +#br 
 + 
 +**** [[LTIPodmanSpawner>JupyterHub/LTIPodmanS​pawner]] [#u1b06d85] 
 +- [[Podman]] が使用可能 
 +- niklas netter 氏の [[podmanspawner>PodmanSpawner]] を利用 (very thanks!) 
 +-- https://github.com/gatoniel/podmanspawne​r 
 + 
 +- 現時点(2021/10) では pod の起動に Popen() を使用している. 
 +- 設定ファイルは'' etc/jupyter_podman_config.py''
#br #br
Line 166: Line 209:
-- 教材の配布と収集に便利 -- 教材の配布と収集に便利
- Volume への任意名でのアクセス. - Volume への任意名でのアクセス.
-- 起動イメージのリモート選択.Jupyter Lab/Notebook でないイメージを選択すると漏れなく死にます :-o+- 起動イメージのリモート選択.表示名のフィルタリング.Jupyter Lab/Notebook でないイメージを選択すると漏れなく死にます :-o
- 起動 URL(Lab/Notebook)の選択. - 起動 URL(Lab/Notebook)の選択.
-- iframe サポート+- %%iframe サポート%%  動くための条件がシビア(tornado のバージョンやブラウザの種類によって条件が変わる)
- CPU/Momery の制限 - CPU/Momery の制限
#br #br
**** Volume 名に関する制約 [#q7b847fc] **** Volume 名に関する制約 [#q7b847fc]
-- ボリューム名には小文字のアルファベット・数字以外は使用できない.特殊文字も使用できない.+- ボリューム名には小文字のアルファベット・数字以外は使用できない.特殊文字も使用できない.(snake_case)
- 大文字のボリューム名は小文字に変換される. - 大文字のボリューム名は小文字に変換される.
- 同じボリューム名・アクセス名を指定した場合は,最初の物が優先される. - 同じボリューム名・アクセス名を指定した場合は,最初の物が優先される.
Line 182: Line 225:
**** 注意事項 [#n57178a3] **** 注意事項 [#n57178a3]
- %%Moodle で埋め込み(iframe)表示を行う場合は,Moodle と JupyterHub を同じホストにするか,Moodle のホスト上で feserver を動かす.%% - %%Moodle で埋め込み(iframe)表示を行う場合は,Moodle と JupyterHub を同じホストにするか,Moodle のホスト上で feserver を動かす.%%
-- iframe 対応.ただし tornado が cookie の samesite を解釈可能なこと.(python3.8以上)+- %%iframe 対応.ただし tornado が cookie の samesite を解釈可能なこと.(python3.8以上)%% 
 +- tornado のバージョンやブラウザの種類によって条件が変わるので,部分的サポートとする.
#br #br
**** 起動 [#bdc8edbc] **** 起動 [#bdc8edbc]
-- jupyterhub -f mdldockerspawner/etc/jupyterhub_config.py +- jupyterhub -f lticontainerspawner/etc/jupyterhub_docker_config.py 
-#br +- jupyterhub -f lticontainerspawner/etc/jupyterhub_podma​n_config.py
- +
-*** [[LTIPodmanSpawner>JupyterHub/LTIPodmanS​pawner]] [#eb2e9361] +
-- テスト中.+
#br #br


トップ   新規 ページ一覧 単語検索 最終更新   ヘルプ   最終更新のRSS 1.0 最終更新のRSS 2.0 最終更新のRSS Atom

サイト内 検索

ログイン

ユーザー名:

パスワード:


パスワード紛失
新規登録

サブ メニュー

ミニカレンダー

前月2024年 4月翌月
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
<今日>

オンライン状況

82 人のユーザが現在オンラインです。 (20 人のユーザが xpwiki を参照しています。)

登録ユーザ: 0
ゲスト: 82

もっと...

アクセスカウンタ

今日 : 1187011870118701187011870
昨日 : 2042920429204292042920429
総計 : 2339127623391276233912762339127623391276233912762339127623391276
Powered by XOOPS Cube 2.1© 2001-2006 XOOPS Cube Project
Design by XoopsDesign.com