ADS(先端データ科学センター)メモ †[edit]
- jupyterhub_config.py でモジュールの拡張
- ユーザ毎に違うボリュームをマウント可能.
- jupyter のDocker イメージの start.sh の改造.start.sh(改)
- SystemUserSpawnerクラスを継承してホームディレクトリの処理./home/{groupname}/{username}
- ユーザのグループ情報を反映(個人ユーザのディレクトリのマウント)
- passwd 情報は getent passwd を ssh で実行してファイルを作り,Webサーバ を中継して持ってくる
- NSS の nss-altfiles を使用してシステムに取り込む
- LDAP(AD) Server ----> 大学管理ホスト(getent passwd) <---- ローカル管理Webサーバ (ssh, webサーバ) ----> 対象サーバ(wget, curl, nss: nss-altfiles)
- LDA認証モジュール
- Jupyterのログイン用 Ldapモジュールは ユーザバンドが可能.検索さえできれば,管理者のパスワードは不要.
- LTI認証モジュール (Learning Tools Interoperability)
ホームディレクトリの自動生成.(Jupyterとの連携)
- 教材配布
Group ID を元に任意のボリュームをマウント †[edit]
書き換えるファイル †[edit]
- /usr/local/anaconda/envs/jupyterhub/lib/python3.8/site-packages/jupyterhub/spawner.py
- /usr/local/anaconda/envs/jupyterhub/lib/python3.8/site-packages/dockerspawner/*
- /usr/local/anaconda/envs/jupyterhub/lib/python3.8/site-packages/dockerspawner/systemuserspawner.py
- /usr/local/anaconda/envs/jupyterhub/lib/python3.8/site-packages/dockerspawner/nsldockerspawner.py (追加)
- コンテナ内:/usr/local/bin/start.sh