flagflag  
2: 2021-07-10 (Sat) 17:44:08 iseki source Cur: 2021-07-13 (Tue) 20:26:37 iseki source
Line 1: Line 1:
** dockerspawner.SystemUserSpawner [#nc54a560] ** dockerspawner.SystemUserSpawner [#nc54a560]
 +- 2021 7/12 版
- https://github.com/jupyterhub/dockerspaw​ner/blob/master/dockerspawner/systemuser​spawner.py - https://github.com/jupyterhub/dockerspaw​ner/blob/master/dockerspawner/systemuser​spawner.py
- dockerspawner.DockerSpawner からの派生クラス - dockerspawner.DockerSpawner からの派生クラス
-- DockerSpawner と同じパッケージ? 特にインストールしていないが,既に入っていた.+- DockerSpawner と同じパッケージ? 特にインストールしていないが,既に入っていた.(''注:これは最新版ではなかった'')
- jovyan ではなく,ログインユーザで使用可.ログインユーザのホームディレクトリをマウントする. - jovyan ではなく,ログインユーザで使用可.ログインユーザのホームディレクトリをマウントする.
-- グループに応じてマウントディレクトリを指定可能. -- グループに応じてマウントディレクトリを指定可能.
Line 11: Line 11:
- ただしログインユーザの情報が,ローカルに取れない場合(LDAPのユーザバインドでログインした場合),ホームディレクトリ等の情報が無いので途中でエラーを起こす. - ただしログインユーザの情報が,ローカルに取れない場合(LDAPのユーザバインドでログインした場合),ホームディレクトリ等の情報が無いので途中でエラーを起こす.
-- 作りこめば大丈夫! -- 作りこめば大丈夫!
--- jovyan は潰せ!+-- %%jovyan は潰せ!%% %%jovyan はテンプレートユーザだから潰しちゃダメ%%  Dockerfile にしたからやっぱり潰す
- see also [[DockerSpawner>JupyterHub/DockerSpawner​]] - see also [[DockerSpawner>JupyterHub/DockerSpawner​]]
 +
 +#br
 +
 +*** この下以降の問題を全て解決した jupyterhub_config.py [#t00dcfcc]
 +- altfiles
 +-- see [[NSS]]
 +- 実験用 最新版
 +-- 2021 07/12
 +-- [[jupyterhub_config_systemuser.py>./jupy​terhub_config.py]] (空白入れるのが途中で面倒になった)
 +
 +#br
 +
 +*** 上記 GitHub の最新版(2021 07/11)を入れると,コンテナ内で NB_* の環境変数でグループIDを取れる! [#pb6155b1]
 +-  /usr/local/anaconda/envs/jupyterhub/lib/​python3.8/site-packages/dockerspawner/sy​stemuserspawner.py を差し替える.
 +- HOME も取れる
 +
 + iseki@299e2fa47bf9:~$ env |grep NB_
 + NB_UID=10015
 + NB_GID=10001
 + NB_USER=iseki
 +#br
 +
 +**** グループ名も取れるように改造 [#y38d9264]
 + 129    def get_env(self):
 + 130        env = super(SystemUserSpawner, self).get_env()
 + 131        # relies on NB_USER and NB_UID handling in jupyter/docker-stacks
 + 132        env.update(
 + 133            dict(
 + 134                USER=self.user.name,  # deprecated
 + 135                NB_USER=self.user.name,
 + 136                USER_ID=self.user_id,  # deprecated
 + 137                NB_UID=self.user_id,
 + 138                HOME=self.homedir,
 + 139            )
 + 140        )
 + 141        if self.group_id >= 0:
 + 142            env.update(NB_GID=self.group_id)
 + 143            # Fumi.Iseki
 + 144            import grp
 + 145            gname = grp.getgrgid(self.group_id).gr_name
 + 146            env.update(NB_GNM=gname)
 + 147        return env
 +
 +*** Memo [#r4868d62]
 +- notebook_dir = /home/teacher/{username}/work が効かない.teacher が無視される.
#br #br


Front page   New List of Pages Search Recent changes   Help   RSS of recent changes (RSS 1.0) RSS of recent changes (RSS 2.0) RSS of recent changes (RSS Atom)

Site Search

Login

Username:

Password:


Lost Password?
Register now!!

Sub Menu

mini Calendar

Last MonthJun 2024Next Month
Su Mo Tu We Th Fr Sa
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
Today

Who's Online

34 user(s) are online (7 user(s) are browsing xpwiki)

Members: 0
Guests: 34

more...

Access Counter

Today : 3616361636163616
Yesterday : 5272527252725272
Total : 2374265523742655237426552374265523742655237426552374265523742655
Powered by XOOPS Cube 2.1© 2001-2006 XOOPS Cube Project
Design by XoopsDesign.com