Home
News
Forum
Wiki
Blog
Contents
Gallery
Movies
Downloads
About NSL
If you want to see English page, please click "English" Button at Left.
[
タイトル一覧
|
ページ一覧
|
新規
|
単語検索
|
最終更新
|
ヘルプ
]
JupyterHub
をテンプレートにして作成
[
トップ
]
[ ]
開始行:
** JupyterHub
- マルチユーザのための [[Jupyter]] サーバー(ユーザ認証機...
- https://github.com/jupyterhub/jupyterhub
- https://github.com/gatoniel/jupyterhub 改良版
- https://jupyterhub.readthedocs.io/en/0.7.2/getting-star...
- https://horomary.hatenablog.com/entry/2019/11/09/181614
- see also: ''[[Jupyter]]''
- see also: [[Docker]], [[Podman]]
- see also: [[Kubernetes]], [[PodmanSpawner]]
- see also: [[configurable-http-proxy]]
- [[DockerSpawner>./DockerSpawner]]
- [[LTIDockerSpawner>./LTIDockerSpawner]]
- [[LTIPodmanSpawner>./LTIPodmanSpawner]]
- [[Moodle+JupyterHub]]
- [[開発>./devel]]
- [[API>./API]]
#br
** INSTALL
*** Rocky Linux 8
- [[Detail Log>./RockyLinux8_install]]
#br
*** pip
#br
*** conda
- conda update -c conda-forge jupyterhub -y
#br
*** for CentOS 8.5 with pip
# yum install python3
# pip3 install --upgrade pip
# yum install npm
# npm install -g configurable-http-proxy
# pip install setuptools_rust
# pip install jupyterhub
# pip install dockerspawner
# pip install --upgrade notebook
# pip install --upgrade jupyterlab
# jupyterhub --version
# jupyter --version
# jupyter notebook --version
# jupyter lab --version
#br
*** 2.0.0 with conda
**** Change Log
- https://jupyterhub.readthedocs.io/en/stable/changelog.h...
#br
**** Install
(base) # conda install -c conda-forge conda==4.11.0 -y
(base) # conda activate jupyterhub
(jupyterhub) # conda update -c conda-forge jupyterhub -y
(jupyterhub) # jupyterhub --upgrade-db
(jupyterhub) # jupyterhub -f .....
#br
**** podmanspawner.PodmanSpawner
- おおっ class のサンプルに Podman がある!
-- と思ったら niklas netter 氏の [[podmanspawner>https://...
#br
**** websocket モジュールが無いとのことで起動しなくなった...
ModuleNotFoundError: No module named 'websocket'
- conda 環境で websocket をインストール
# conda install -c conda-forge websocket-client
- pip なら pip install websockets
#br
**** データベースのスキーマが合わないとのことで,起動しな...
- jupyterhub upgrade-db してもだめなので,/var/lib/jupyte...
#br
*** 1.4.2
**** conda を使用
(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==...
(jupyterhub) # conda install -c conda-forge voila -y
(jupyterhub) # conda install jupyter_client -y
(jupyterhub) # git clone https://github.com/jupyterhub/n...
(jupyterhub) # pip install -e nativeauthenticator (認...
(jupyterhub) # pip install dockerspawner
- ディレクトリのパーミッションの設定を忘れずに!
#br
**** pip を使用する.
- nodejs: CentOS7 の場合は nodejs はバージョンが古くて,c...
curl -sL https://rpm.nodesource.com/setup_14.x | bash -
yum remove nodejs npm -y
yum install nodejs -y
node -v
-- nodejs のバージョンがアップしない場合は,/var/tmp/yum...
-- https://rpm.nodesource.com/setup_##.x は非推奨となった...
--- see https://github.com/nodesource/distributions
npm install -g configurable-http-proxy
python3 -m pip install jupyterhub
python3 -m pip install dockerspawner
python3 -m pip install --upgrade notebook
python3 -m pip install --upgrade jupyterlab
#br
*** Notebook の Docker イメージ
# docker pull jupyter/datascience-notebook
# docker pull jupyter/tensorflow-notebook
#br
*** Version Up 1.0.0 -> 1.4.1
# conda install -c conda-forge jupyterhub
# conda install notebook
**** バージョンの確認
- (jupyterhub) # jupyterhub --version
#br
*** [[LTI Authenticator>LTI]]
- Moodle と連携する為の 認証モジュール(Moodleの外部サー...
- 先に authlib を入れておく.
-- conda install oauthlib or pip install oauthlib
- v1.2.0 release (2021 9/2)
-- https://pypi.org/project/jupyterhub-ltiauthenticator/1...
-- Moodle に対して Patch 不要
(jupyterhub)# pip install --upgrade jupyterhub-ltiauthen...
** 設定
- https://zero-to-jupyterhub.readthedocs.io/en/latest/cus...
- https://zero-to-jupyterhub.readthedocs.io/en/latest/adm...
- jupyterhub --generate-config を実行すると カレントディ...
- 個人的には jupyterhub が /usr/local 以下にある場合は /u...
- 設定ファイルは拡張子が .py でないと,読み込まれない場合...
#br
*** Authenticator Class (authenticator_class)
**** auth.DummyAuthenticator
- その名の通りダミー.認証無し.
- 全てのユーザを許可する.(一応パスワード入力欄は表示さ...
#br
**** jupyterhub.auth.PAMAuthenticator (default)
- 認証に[[PAM]]を使用する.恐らくサービスは login
- v1.1.0 にバグあり. [[Trouble Shooting>#rf83821d]] 参照.
#br
**** nativeauthenticator.NativeAuthenticator
- 追加モジュール(オプション)
- 詳細は検証中
#br
**** [[LDAP]]: ldapauthenticator.LDAPAuthenticator
- LDap 認証用.
- モジュールのInstall
(jupyterhub) # conda install -c conda-forge jupyterhub-l...
- jupyterhub_config.py
102 # for LDAP
103 c.JupyterHub.authenticator_class = 'ldapauthenticato...
104 #c.LDAPAuthenticator.server_address = '202.26.150.*'
105 c.LDAPAuthenticator.server_address = '202.26.144.*'
106 c.LDAPAuthenticator.use_ssl = True
107
108 ## AD: template 付き(ユーザバインド)
109 c.LDAPAuthenticator.lookup_dn = False
110 c.LDAPAuthenticator.bind_dn_template = [
111 'cn={username},ou=教員,ou=ユーザー,dc=edutuis,dc...
112 'cn={username},ou=学生,ou=ユーザー,dc=edutuis,dc...
113 ]
114 c.LDAPAuthenticator.user_search_base = 'dc=edutuis,d...
115 c.LDAPAuthenticator.user_attribute = 'sAMAccountName'
116
117 ## AD: template なし
118 #c.LDAPAuthenticator.lookup_dn = True
119 #c.LDAPAuthenticator.user_search_base = 'dc=edutuis,...
120 #c.LDAPAuthenticator.user_attribute = 'sAMAccountName'
121 #c.LDAPAuthenticator.lookup_dn_search_user = 'cn=lda...
122 #c.LDAPAuthenticator.lookup_dn_search_password = '**...
123 #c.LDAPAuthenticator.lookup_dn_user_dn_attribute = '...
124
125 ## NSL: username から dn が探せる場合(ユーザバイン...
126 #c.LDAPAuthenticator.lookup_dn = False
127 #c.LDAPAuthenticator.bind_dn_template = 'cn={usernam...
128
129 ## NSL: ツリーを検索する場合
130 #c.LDAPAuthenticator.lookup_dn = True
131 #c.LDAPAuthenticator.user_search_base = 'ou=user,dc=...
132 #c.LDAPAuthenticator.user_attribute = 'uid'
133 #c.LDAPAuthenticator.lookup_dn_search_user = 'cn=Man...
134 #c.LDAPAuthenticator.lookup_dn_search_password = '**...
135 #c.LDAPAuthenticator.lookup_dn_user_dn_attribute = '...
136
**** [[LTI]] モジュール
#br
*** Server Class
**** jupyterhub.spawner.LocalProcessSpawner (default)
- [[LocalProcessSpawner >./LocalProcessSpawner]]
- サーバに,各ユーザの環境でアクセスできる.
- Jupiter Notebook はサーバにインストールされている物を使...
- 通常作業ディレクトリは /home/{username}/notebook (v1...
- 使用ポートは 8000/tcp, 8081/tcp
#br
**** jupyterhub.spawner.SimpleLocalProcessSpawner
- 名前がややこしい
- 詳細は不明(検証する気はあまりない)
#br
**** dockerspawner.DockerSpawner
- [[''DockerSpawner''>./DockerSpawner]]
- https://github.com/jupyterhub/dockerspawner
- サーバでユーザ毎に ''[[Docker]]'' でNotebook コンテナを...
- 作業ホームは /home/jovjan/work 固定(多分 Docker Image...
- 使用ポートは 8000/tcp, 8081/tcp, 8001/tcp
- Install
(jupyterhub) # pip --no-cache-dir install git+https://gi...
or
(jupyterhub) # pip install dockerspawner
**** dockerspawner.SystemUserSpawner
- [[''SystemUserSpawner''>./SystemUserSpawner]]
- https://github.com/jupyterhub/dockerspawner/blob/master...
- dockerspawner.DockerSpawner からの派生クラス
- DockerSpawner と同じパッケージ? 特にインストールして...
- jovyan ではなく,ログインユーザで使用可.ログインユーザ...
- ただしログインユーザの情報がローカルに取れない場合(LDA...
-- 作りこめば大丈夫かもしれん.
#br
**** dockerspawner.SwarmSpawner
- [[SwarmSpawner>./SwarmSpawner]]
- dockerspawner.DockerSpawner からの派生クラス
- DockerSpawner と同じパッケージ
- クラスタリング用.
- コンテナを [[Docker Compose]] で管理し,複数のサーバー...
- 使用ポートは 8000/tcp, 8081/tcp, 8001/tcp, 2377/tcp, 79...
#br
**** niicloudoperation/jupyterhub-singleuser
- NII開発.自由度低し(個人的感想).[[CoursewareHub]] 用...
- https://github.com/NII-cloud-operation/CoursewareHub-LC...
- Document: https://github.com/nii-gakunin-cloud/ocs-temp...
- [[dockerspawner.SwarmSpawner>./SwarmSpawner]] からの派...
- 検証中
- INSTALL
(jupyterhub) # git clone https://github.com/NII-cloud-op...
(jupyterhub) # cd CoursewareHub-LC_platform/jupyterhub/s...
(jupyterhub) # pip --no-cache-dir install .
*** jovyan って誰?
- DockerSpawner を使用すると,作業ディレクトリが /home/jo...
- c.DockerSpawner.notebook_dir 辺りをいじっても変化しない?
- https://github.com/jupyter/docker-stacks/issues/358
#br
** 実行
**** 前準備
# cd /etc/pki/tls
# openssl req -new -newkey rsa:2048 -days 3650 -nodes -k...
# openssl x509 -in server.csr -days 3650 -req -signkey p...
# vi /usr/local/etc/jupyterhub/jupyterhub_config.py
# mkdir /var/lib/jupyterhub
**** 実行
(base) # conda activate jupyterhub
(jupyterhub) # jupyterhub -f /usr/local/etc/jupyterhub/j...
- --no-ssl は0.7で廃止された
#br
** Log
*** LC_nblineage
- https://github.com/NII-cloud-operation/Jupyter-LC_nblin...
-- lab では動かない!
#br
*** LC_wrapper
- https://github.com/NII-cloud-operation/Jupyter-LC_wrapper
#br
** 情報ソース
*** Notebook
**** Docker Images
***** niicloudoperation/notebook
- docker pull niicloudoperation/notebook
#br
*** Spawner
**** [[Docker]]
- https://github.com/jupyterhub/dockerspawner
#br
**** [[Podman]]
- https://github.com/gatoniel/podmanspawner
#br
**** [[Kubernetes]]
- https://github.com/jupyterhub/zero-to-jupyterhub-k8s
- https://zero-to-jupyterhub.readthedocs.io/en/latest/
#br
** DB
*** MySQL
- [[SQLAlchemy]] で PyMySQL ドライバを使用する
- pool_recycle の設定を忘れずに!
- charset は urf8mb4
#br
** NVIDIA
*** Driver
**** nouveau ドライバ(デフォルトのグラフィックドライバ)...
- lsmod | grep nouveau でドライバ確認
- /etc/default/grab のオプションに rd.driver.blacklist=no...
- カーネル設定ファイルの作り直し
-- grub2-mkconfig -o /boot/grub2/grub.cfg (RedHat系)
-- grub-mkconfig -o /boot/grub/grub.cfg (Debian系)
#br
**** Driver
- nvidia-driver, cuda をインストール
#br
**** Docker
- nvidia-container-toolkit が必要
-- コンテナ内からホストのGPUを使う
-- %%nvidia-smi などのコマンドがインストールされる.%%
#br
*** Tool Kit
- CUDA Toolkit : https://developer.nvidia.com/cuda-toolki...
- Tool Kit をインストールするとドライバもインストールされ...
#br
*** Docker
- docker run --gpus all nvidia/cuda:12.2.0-devel-ubuntu20...
-- Failed to initialize NVML: Unknown Error
-- ホストの /etc/nvidia-container-runtime/config.toml を...
#br
** Trouble Shooting
*** ltiauthenticator
- https://pypi.org/project/jupyterhub-ltiauthenticator/
#br
**** Jupyterhub 4.0.0
- 403 : Forbidden '_xsrf' argument missing from POST の...
-- JupyterHub で XSRFのチェックを強化したらしい
- /usr/local/lib/python3.9/site-packages/jupyterhub/handl...
-- def check_xsrf_cookie(self)
--- super().check_xsrf_cookie() で例外発生
--- 親は tornado のRequestHandlerか?
- 2023 5/29 時点でこのバグは修正されている.
#br
*** JupyterLab
**** JupyterHub をバージョンアップしたら Jupyter Labが起...
- 起動する JupyterHub(ex. 2.0.1)とイメージ内のJupyterHu...
#br
*** 日本語のBUG
- 日本語のファイルやディレクトリでコピーなどを行うと errn...
#br
*** [[PAM]]
**** JupyterHub: PAM使用時に 再login するとPAMの認証エラ...
- 認証モジュールに jupyterhub.auth.PAMAuthenticator を使...
-- c.JupyterHub.authenticator_class = 'jupyterhub.auth.PA...
- バグだろ.
- Resolve: jupyterhub_config.py に ''c.PAMAuthenticator.o...
- see: https://github.com/jupyterhub/jupyterhub/issues/486
#br
**** swarm モードだと v1.1.0 でPAM認証のエラーを起こす.
- 上記バグもこれか?
- 1.0.0 に戻す.
(jupyterhub) # conda uninstall jupyterhub
(jupyterhub) # conda -c conda-forge install jupyterhub==...
#br
*** homeディレクトの名前を変えたら,ログインできなくなった
- ~/.cache, ~/.jupyter, ~/.local ができているので消す.
#br
*** Programing
**** docker
- https://docker-py.readthedocs.io/en/stable/api.html
#br
- APIClient 呼び出しメソッド順
-- inspect_image
-- inspect_container
-- inspect_image
-- start
-- port
#br
**** podman
#br
終了行:
** JupyterHub
- マルチユーザのための [[Jupyter]] サーバー(ユーザ認証機...
- https://github.com/jupyterhub/jupyterhub
- https://github.com/gatoniel/jupyterhub 改良版
- https://jupyterhub.readthedocs.io/en/0.7.2/getting-star...
- https://horomary.hatenablog.com/entry/2019/11/09/181614
- see also: ''[[Jupyter]]''
- see also: [[Docker]], [[Podman]]
- see also: [[Kubernetes]], [[PodmanSpawner]]
- see also: [[configurable-http-proxy]]
- [[DockerSpawner>./DockerSpawner]]
- [[LTIDockerSpawner>./LTIDockerSpawner]]
- [[LTIPodmanSpawner>./LTIPodmanSpawner]]
- [[Moodle+JupyterHub]]
- [[開発>./devel]]
- [[API>./API]]
#br
** INSTALL
*** Rocky Linux 8
- [[Detail Log>./RockyLinux8_install]]
#br
*** pip
#br
*** conda
- conda update -c conda-forge jupyterhub -y
#br
*** for CentOS 8.5 with pip
# yum install python3
# pip3 install --upgrade pip
# yum install npm
# npm install -g configurable-http-proxy
# pip install setuptools_rust
# pip install jupyterhub
# pip install dockerspawner
# pip install --upgrade notebook
# pip install --upgrade jupyterlab
# jupyterhub --version
# jupyter --version
# jupyter notebook --version
# jupyter lab --version
#br
*** 2.0.0 with conda
**** Change Log
- https://jupyterhub.readthedocs.io/en/stable/changelog.h...
#br
**** Install
(base) # conda install -c conda-forge conda==4.11.0 -y
(base) # conda activate jupyterhub
(jupyterhub) # conda update -c conda-forge jupyterhub -y
(jupyterhub) # jupyterhub --upgrade-db
(jupyterhub) # jupyterhub -f .....
#br
**** podmanspawner.PodmanSpawner
- おおっ class のサンプルに Podman がある!
-- と思ったら niklas netter 氏の [[podmanspawner>https://...
#br
**** websocket モジュールが無いとのことで起動しなくなった...
ModuleNotFoundError: No module named 'websocket'
- conda 環境で websocket をインストール
# conda install -c conda-forge websocket-client
- pip なら pip install websockets
#br
**** データベースのスキーマが合わないとのことで,起動しな...
- jupyterhub upgrade-db してもだめなので,/var/lib/jupyte...
#br
*** 1.4.2
**** conda を使用
(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==...
(jupyterhub) # conda install -c conda-forge voila -y
(jupyterhub) # conda install jupyter_client -y
(jupyterhub) # git clone https://github.com/jupyterhub/n...
(jupyterhub) # pip install -e nativeauthenticator (認...
(jupyterhub) # pip install dockerspawner
- ディレクトリのパーミッションの設定を忘れずに!
#br
**** pip を使用する.
- nodejs: CentOS7 の場合は nodejs はバージョンが古くて,c...
curl -sL https://rpm.nodesource.com/setup_14.x | bash -
yum remove nodejs npm -y
yum install nodejs -y
node -v
-- nodejs のバージョンがアップしない場合は,/var/tmp/yum...
-- https://rpm.nodesource.com/setup_##.x は非推奨となった...
--- see https://github.com/nodesource/distributions
npm install -g configurable-http-proxy
python3 -m pip install jupyterhub
python3 -m pip install dockerspawner
python3 -m pip install --upgrade notebook
python3 -m pip install --upgrade jupyterlab
#br
*** Notebook の Docker イメージ
# docker pull jupyter/datascience-notebook
# docker pull jupyter/tensorflow-notebook
#br
*** Version Up 1.0.0 -> 1.4.1
# conda install -c conda-forge jupyterhub
# conda install notebook
**** バージョンの確認
- (jupyterhub) # jupyterhub --version
#br
*** [[LTI Authenticator>LTI]]
- Moodle と連携する為の 認証モジュール(Moodleの外部サー...
- 先に authlib を入れておく.
-- conda install oauthlib or pip install oauthlib
- v1.2.0 release (2021 9/2)
-- https://pypi.org/project/jupyterhub-ltiauthenticator/1...
-- Moodle に対して Patch 不要
(jupyterhub)# pip install --upgrade jupyterhub-ltiauthen...
** 設定
- https://zero-to-jupyterhub.readthedocs.io/en/latest/cus...
- https://zero-to-jupyterhub.readthedocs.io/en/latest/adm...
- jupyterhub --generate-config を実行すると カレントディ...
- 個人的には jupyterhub が /usr/local 以下にある場合は /u...
- 設定ファイルは拡張子が .py でないと,読み込まれない場合...
#br
*** Authenticator Class (authenticator_class)
**** auth.DummyAuthenticator
- その名の通りダミー.認証無し.
- 全てのユーザを許可する.(一応パスワード入力欄は表示さ...
#br
**** jupyterhub.auth.PAMAuthenticator (default)
- 認証に[[PAM]]を使用する.恐らくサービスは login
- v1.1.0 にバグあり. [[Trouble Shooting>#rf83821d]] 参照.
#br
**** nativeauthenticator.NativeAuthenticator
- 追加モジュール(オプション)
- 詳細は検証中
#br
**** [[LDAP]]: ldapauthenticator.LDAPAuthenticator
- LDap 認証用.
- モジュールのInstall
(jupyterhub) # conda install -c conda-forge jupyterhub-l...
- jupyterhub_config.py
102 # for LDAP
103 c.JupyterHub.authenticator_class = 'ldapauthenticato...
104 #c.LDAPAuthenticator.server_address = '202.26.150.*'
105 c.LDAPAuthenticator.server_address = '202.26.144.*'
106 c.LDAPAuthenticator.use_ssl = True
107
108 ## AD: template 付き(ユーザバインド)
109 c.LDAPAuthenticator.lookup_dn = False
110 c.LDAPAuthenticator.bind_dn_template = [
111 'cn={username},ou=教員,ou=ユーザー,dc=edutuis,dc...
112 'cn={username},ou=学生,ou=ユーザー,dc=edutuis,dc...
113 ]
114 c.LDAPAuthenticator.user_search_base = 'dc=edutuis,d...
115 c.LDAPAuthenticator.user_attribute = 'sAMAccountName'
116
117 ## AD: template なし
118 #c.LDAPAuthenticator.lookup_dn = True
119 #c.LDAPAuthenticator.user_search_base = 'dc=edutuis,...
120 #c.LDAPAuthenticator.user_attribute = 'sAMAccountName'
121 #c.LDAPAuthenticator.lookup_dn_search_user = 'cn=lda...
122 #c.LDAPAuthenticator.lookup_dn_search_password = '**...
123 #c.LDAPAuthenticator.lookup_dn_user_dn_attribute = '...
124
125 ## NSL: username から dn が探せる場合(ユーザバイン...
126 #c.LDAPAuthenticator.lookup_dn = False
127 #c.LDAPAuthenticator.bind_dn_template = 'cn={usernam...
128
129 ## NSL: ツリーを検索する場合
130 #c.LDAPAuthenticator.lookup_dn = True
131 #c.LDAPAuthenticator.user_search_base = 'ou=user,dc=...
132 #c.LDAPAuthenticator.user_attribute = 'uid'
133 #c.LDAPAuthenticator.lookup_dn_search_user = 'cn=Man...
134 #c.LDAPAuthenticator.lookup_dn_search_password = '**...
135 #c.LDAPAuthenticator.lookup_dn_user_dn_attribute = '...
136
**** [[LTI]] モジュール
#br
*** Server Class
**** jupyterhub.spawner.LocalProcessSpawner (default)
- [[LocalProcessSpawner >./LocalProcessSpawner]]
- サーバに,各ユーザの環境でアクセスできる.
- Jupiter Notebook はサーバにインストールされている物を使...
- 通常作業ディレクトリは /home/{username}/notebook (v1...
- 使用ポートは 8000/tcp, 8081/tcp
#br
**** jupyterhub.spawner.SimpleLocalProcessSpawner
- 名前がややこしい
- 詳細は不明(検証する気はあまりない)
#br
**** dockerspawner.DockerSpawner
- [[''DockerSpawner''>./DockerSpawner]]
- https://github.com/jupyterhub/dockerspawner
- サーバでユーザ毎に ''[[Docker]]'' でNotebook コンテナを...
- 作業ホームは /home/jovjan/work 固定(多分 Docker Image...
- 使用ポートは 8000/tcp, 8081/tcp, 8001/tcp
- Install
(jupyterhub) # pip --no-cache-dir install git+https://gi...
or
(jupyterhub) # pip install dockerspawner
**** dockerspawner.SystemUserSpawner
- [[''SystemUserSpawner''>./SystemUserSpawner]]
- https://github.com/jupyterhub/dockerspawner/blob/master...
- dockerspawner.DockerSpawner からの派生クラス
- DockerSpawner と同じパッケージ? 特にインストールして...
- jovyan ではなく,ログインユーザで使用可.ログインユーザ...
- ただしログインユーザの情報がローカルに取れない場合(LDA...
-- 作りこめば大丈夫かもしれん.
#br
**** dockerspawner.SwarmSpawner
- [[SwarmSpawner>./SwarmSpawner]]
- dockerspawner.DockerSpawner からの派生クラス
- DockerSpawner と同じパッケージ
- クラスタリング用.
- コンテナを [[Docker Compose]] で管理し,複数のサーバー...
- 使用ポートは 8000/tcp, 8081/tcp, 8001/tcp, 2377/tcp, 79...
#br
**** niicloudoperation/jupyterhub-singleuser
- NII開発.自由度低し(個人的感想).[[CoursewareHub]] 用...
- https://github.com/NII-cloud-operation/CoursewareHub-LC...
- Document: https://github.com/nii-gakunin-cloud/ocs-temp...
- [[dockerspawner.SwarmSpawner>./SwarmSpawner]] からの派...
- 検証中
- INSTALL
(jupyterhub) # git clone https://github.com/NII-cloud-op...
(jupyterhub) # cd CoursewareHub-LC_platform/jupyterhub/s...
(jupyterhub) # pip --no-cache-dir install .
*** jovyan って誰?
- DockerSpawner を使用すると,作業ディレクトリが /home/jo...
- c.DockerSpawner.notebook_dir 辺りをいじっても変化しない?
- https://github.com/jupyter/docker-stacks/issues/358
#br
** 実行
**** 前準備
# cd /etc/pki/tls
# openssl req -new -newkey rsa:2048 -days 3650 -nodes -k...
# openssl x509 -in server.csr -days 3650 -req -signkey p...
# vi /usr/local/etc/jupyterhub/jupyterhub_config.py
# mkdir /var/lib/jupyterhub
**** 実行
(base) # conda activate jupyterhub
(jupyterhub) # jupyterhub -f /usr/local/etc/jupyterhub/j...
- --no-ssl は0.7で廃止された
#br
** Log
*** LC_nblineage
- https://github.com/NII-cloud-operation/Jupyter-LC_nblin...
-- lab では動かない!
#br
*** LC_wrapper
- https://github.com/NII-cloud-operation/Jupyter-LC_wrapper
#br
** 情報ソース
*** Notebook
**** Docker Images
***** niicloudoperation/notebook
- docker pull niicloudoperation/notebook
#br
*** Spawner
**** [[Docker]]
- https://github.com/jupyterhub/dockerspawner
#br
**** [[Podman]]
- https://github.com/gatoniel/podmanspawner
#br
**** [[Kubernetes]]
- https://github.com/jupyterhub/zero-to-jupyterhub-k8s
- https://zero-to-jupyterhub.readthedocs.io/en/latest/
#br
** DB
*** MySQL
- [[SQLAlchemy]] で PyMySQL ドライバを使用する
- pool_recycle の設定を忘れずに!
- charset は urf8mb4
#br
** NVIDIA
*** Driver
**** nouveau ドライバ(デフォルトのグラフィックドライバ)...
- lsmod | grep nouveau でドライバ確認
- /etc/default/grab のオプションに rd.driver.blacklist=no...
- カーネル設定ファイルの作り直し
-- grub2-mkconfig -o /boot/grub2/grub.cfg (RedHat系)
-- grub-mkconfig -o /boot/grub/grub.cfg (Debian系)
#br
**** Driver
- nvidia-driver, cuda をインストール
#br
**** Docker
- nvidia-container-toolkit が必要
-- コンテナ内からホストのGPUを使う
-- %%nvidia-smi などのコマンドがインストールされる.%%
#br
*** Tool Kit
- CUDA Toolkit : https://developer.nvidia.com/cuda-toolki...
- Tool Kit をインストールするとドライバもインストールされ...
#br
*** Docker
- docker run --gpus all nvidia/cuda:12.2.0-devel-ubuntu20...
-- Failed to initialize NVML: Unknown Error
-- ホストの /etc/nvidia-container-runtime/config.toml を...
#br
** Trouble Shooting
*** ltiauthenticator
- https://pypi.org/project/jupyterhub-ltiauthenticator/
#br
**** Jupyterhub 4.0.0
- 403 : Forbidden '_xsrf' argument missing from POST の...
-- JupyterHub で XSRFのチェックを強化したらしい
- /usr/local/lib/python3.9/site-packages/jupyterhub/handl...
-- def check_xsrf_cookie(self)
--- super().check_xsrf_cookie() で例外発生
--- 親は tornado のRequestHandlerか?
- 2023 5/29 時点でこのバグは修正されている.
#br
*** JupyterLab
**** JupyterHub をバージョンアップしたら Jupyter Labが起...
- 起動する JupyterHub(ex. 2.0.1)とイメージ内のJupyterHu...
#br
*** 日本語のBUG
- 日本語のファイルやディレクトリでコピーなどを行うと errn...
#br
*** [[PAM]]
**** JupyterHub: PAM使用時に 再login するとPAMの認証エラ...
- 認証モジュールに jupyterhub.auth.PAMAuthenticator を使...
-- c.JupyterHub.authenticator_class = 'jupyterhub.auth.PA...
- バグだろ.
- Resolve: jupyterhub_config.py に ''c.PAMAuthenticator.o...
- see: https://github.com/jupyterhub/jupyterhub/issues/486
#br
**** swarm モードだと v1.1.0 でPAM認証のエラーを起こす.
- 上記バグもこれか?
- 1.0.0 に戻す.
(jupyterhub) # conda uninstall jupyterhub
(jupyterhub) # conda -c conda-forge install jupyterhub==...
#br
*** homeディレクトの名前を変えたら,ログインできなくなった
- ~/.cache, ~/.jupyter, ~/.local ができているので消す.
#br
*** Programing
**** docker
- https://docker-py.readthedocs.io/en/stable/api.html
#br
- APIClient 呼び出しメソッド順
-- inspect_image
-- inspect_container
-- inspect_image
-- start
-- port
#br
**** podman
#br
ページ名:
サイト内 検索
高度な検索
ログイン
ユーザー名:
パスワード:
パスワード紛失
新規登録
サブ メニュー
新着情報
Books
リンク
サイトマップ
e-Learning
TUIS 認証局証明書
ミニカレンダー
2024年 9月
日
月
火
水
木
金
土
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
<今日>
オンライン状況
38 人のユーザが現在オンラインです。 (3 人のユーザが xpwiki を参照しています。)
登録ユーザ: 0
ゲスト: 38
もっと...
アクセスカウンタ
今日 :
昨日 :
総計 :
Powered by XOOPS Cube 2.1© 2001-2006
XOOPS Cube Project
Design by
XoopsDesign.com