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 MonthJul 2025Next 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 31
Today

Who's Online

122 user(s) are online (12 user(s) are browsing xpwiki)

Members: 0
Guests: 122

more...

Access Counter

Today : 8503850385038503
Yesterday : 2172621726217262172621726
Total : 2733868127338681273386812733868127338681273386812733868127338681
Powered by XOOPS Cube 2.1© 2001-2006 XOOPS Cube Project
Design by XoopsDesign.com