flagflag  If you want to see English page, please click "English" Button at Left.
13: 2021-08-15 (日) 21:42:25 iseki ソース 14: 2021-08-29 (日) 18:02:15 iseki ソース
Line 57: Line 57:
- コンテナ内:/usr/local/bin/start.sh - コンテナ内:/usr/local/bin/start.sh
-- こいつの書き換えは必須! -- こいつの書き換えは必須!
-#br 
-* Moodle & JupyterHub 連携 [#t72c88ce] 
- 
-** 既存システム [#yb4a054d] 
- 
-*** [[Moodle]] [#y96f887e] 
-#br 
-*** [[Docker]] ([[CentOS8]]) [#o38fddf3] 
- (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) # systemctrl enable docker 
- (base) # systemctrl start docker 
- (base) # docker pull jupyterhub/singleuser 
- (base) # docker pull jupyter/datascience-notebook 
-#br 
- 
-*** [[Anaconda]] [#jb987bc7] 
-#br 
- 
-*** [[JupyterHub]]/[[DockerSpawner>JupyterHu​b/DockerSpawner]] [#z52a6900] 
- (base) # conda create -n jupyterhub python=3.8 -y 
- (base) # conda activate jupyterhub 
- (jupyterhub) # conda install -c conda-forge notebook -y 
- (jupyterhub) # conda install -c conda-forge jupyterlab -y 
- (jupyterhub) # conda install -c conda-forge jupyterhub==1.4.2  -y 
- (jupyterhub) # conda install -c conda-forge voila -y 
- (jupyterhub) # conda install jupyter_client -y 
- (jupyterhub) # pip --no-cache-dir install git+https://github.com/jupyterhub/docker​spawner.git 
-- 作業ディレクトリ 
--- mkdir -p /var/lib/jupyterhub/ 
-- FireWall 
--- firewall-cmd --add-port 8000/tcp --permanent 
--- firewall-cmd --reload 
- 
-- vi jupyterhub_config.py 
--- IPアドレス,サーバ証明書,Dockerイメージの選択 
-- 起動 
--- conda activate jupyterhub 
--- jupyterhub -f jupyterhub_config.py 
-#br 
- 
-** 少し特殊なシステム [#e4866905] 
-***  [[SystemUserSpawner>JupyterHub/SystemUse​rSpawner]]  [#m07110de] 
-- JupyterHub の DockerSpawner を継承. 
--- システムのユーザを使用可能. 
--- システムのユーザのホーム領域をマウント可能. 
- 
-- 2021 7/12 版(それ以降)推奨 
-- https://github.com/jupyterhub/dockerspaw​ner/blob/master/dockerspawner/systemuser​spawner.py 
-- DockerSpawner のインストールで,一緒にインストールされる.(バージョンが古い場合は手動インストール) 
-#br 
- 
-**** [[altfiles>NSS]] [#n90bdca5] 
-- SystemUserSpawner 用の [[NSS]] を使用した システムのユーザ情報の入手方法([[LDAP]] を使用する手段もある) 
-- getent passwd と getent group で情報が取れるようになれば OK 
- 
- # git clone https://github.com/aperezdc/nss-altfiles​.git 
- # cd nss-altfiles/ 
- # ./configure --prefix=/usr --datadir=/usr/local/etc --with-type=pwd,grp 
- # make 
- # make install 
- # ln -s /usr/lib/libnss_altfiles.so.2 /usr/lib64/libnss_altfiles.so 
- # ldconfig 
- 
- # cd /usr/local/etc 
- # wget https://el.mml.tuis.ac.jp/system/passwd 
- # wget https://el.mml.tuis.ac.jp/system/group          (group は 必要な物だけ /etc/group を編集しても良い) 
- 
-- /etc/nsswitch.conf 
- passwd: files altfiles 
- group:  files altfiles 
-- ユーザアカウントの整合性を取る. 
-#br 
- 
-**** [[LTI>JupyterHub#m4467ad6]] [#g284e3bf] 
-- Moodle と連携する為の 認証モジュール 
-- pip install jupyterhub-ltiauthenticator 
-- cd ......./ltiauthenticator 
-- patch -p1 < ~/mdldockerspawner/ltiauthenticator-1.0.​0.path 
-#br 
- 
-**** cull_idle_servers.py [#n8a3f52c] 
-- 接続の切れた docker コンテナを削除 
-- [[cull_idle_servers>JupyterHub/DockerSpa​wner#zc9428f7]] 
-- https://github.com/jupyterhub/jupyterhub​/tree/a6b7e303df03865d6420f6bccdf627b39f​1d0dc1/examples/cull-idle 
-- wget で DLして /usr/local/bin にコピー 
--- wget https://raw.githubusercontent.com/jupyte​rhub/jupyterhub/a6b7e303df03865d6420f6bc​cdf627b39f1d0dc1/examples/cull-idle/cull​_idle_servers.py 
-#br 
- 
-** 独自拡張 [#ma810a39] 
- 
-*** [[MSLDockerSpawner>JupyterHub/MDLDockerS​pawner]] [#k758b918] 
-- [[Moodle]] と [[JupyterHub]] の連携をとるための Spawner クラス. 
-- [[SystemUserSpawner>JupyterHub/SystemUse​rSpawner]] クラスを継承. 
-- 現時点(2021/08)では jupyterhub_config.py  の中で実装 
-#br 
- 
-**** 機能 [#o44dc5d5] 
-- ユーザグループ機能の完全サポート 
-- Moodle からの LTI カスタムパラメータの受信して動作. 
-- start.sh による Jupyter Lab/Notebook コンテナの動作制御. 
--- 教師ユーザと学生ユーザの分離. 
--- ユーザ毎の Volume のマウント,及びアクセス権(教師と学生)の設定. 
---- 教材の配布と収集に便利 
--- Volume への任意名でのアクセス. 
--- 起動イメージのリモート選択. 
--- 起動 URL(Lab/Notebook)のリモート選択. 
- 
-#br 
- 
-**** 起動 [#bdc8edbc] 
-- jupyterhub -f mdldockerspawner/jupyterhub_config.py 
-#br 
- 
-*** [[mod_mdlds]]  [#hbfc4f2f] 
-- MDLDockerSpawner サポート用 Moodleモジュール 
-#br 
-**** 機能 [#m538ed2a] 
-- LTI のカスタムパラメータ管理 
-- Docker(リモート)のサポート 
--- Volume 管理(表示:削除) 
-- WebService 
--- feserver (feplg_nbws.so)からのデータを xmlrpc で受信し,データベースに格納 
---データベースのデータ利用については検討中 
-#br 
- 
-*** [[feserver]]  [#va0d030b] 
-- feserver フロントエンドサーバ(TCP中継サーバ) 
-- MITM 的動作を行う私的試験用ツール.(一応公開もしている) 
-- 各種モジュールを読み込むことにより,色々な通信データの処理が可能. 
-- コンパイルに [[JunkBox_Lib]] が必要 
-#br 
- 
-**** feplg_nbws.so モジュール [#abc6a346] 
-- Moodle と JupyterHub の中間に於いて,通信情報を収集して Moodle に返すためのモジュール 
-- JupyterHub から見ると,リバースプロキシのように見える. 
-- 機能 
--- WebSocket 通信の解析. 
--- HTTP通信の解析. 
--- Cookie の挿入. 
--- Moodle への xmlrpc 通信. 
- 
-- 起動例 
---  ./fesvr -h 172.22.1.75:8000 -p 9000 -m ./feplg_nbws.so -c -s --conf ./nbsw.conf 
#br #br


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

サイト内 検索

ログイン

ユーザー名:

パスワード:


パスワード紛失
新規登録

サブ メニュー

ミニカレンダー

前月2024年 5月翌月
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 31
<今日>

オンライン状況

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

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

もっと...

アクセスカウンタ

今日 : 6801680168016801
昨日 : 1615016150161501615016150
総計 : 2348609423486094234860942348609423486094234860942348609423486094
Powered by XOOPS Cube 2.1© 2001-2006 XOOPS Cube Project
Design by XoopsDesign.com