8: 2021-07-11 (Sun) 11:32:12 iseki |
9: 2021-07-12 (Mon) 00:07:10 iseki |
| | | |
| **** 設定ファイル(サンプル) [#sc0660b1] | | **** 設定ファイル(サンプル) [#sc0660b1] |
- | - [[jupyterhub_config.py>./jupyterhub_config.py]] | + | - [[jupyterhub_config_sample.py>./jupyterhub_config.py]] |
| #br | | #br |
- | *** Docker images [#w0091afe] | + | |
| + | *** 起動用 Docker images [#w0091afe] |
| - docker pull jupyterhub/singleuser | | - docker pull jupyterhub/singleuser |
| - docker pull jupyter/datascience-notebook | | - docker pull jupyter/datascience-notebook |
| + | #br |
| + | |
| + | *** 新しい起動用 Docker イメージの作り方 [#s2d1d7bf] |
| + | - iseki でログイン時 |
| + | # docker exec -it jupyter-iseki /bin/bash |
| + | cd /home/ |
| + | mv iseki jovyan |
| + | mkdir student |
| + | cd teacher/iseki |
| + | cp ./back_orign |
| + | cp start.sh /usr/local/bin |
| + | exit |
| + | # docker commit jupyter-iseki new-image |
| + | - back_orign |
| + | 1 #!/bin/bash |
| + | 2 cp group /etc/group |
| + | 3 cp group /etc/group- |
| + | 4 cp passwd /etc/passwd |
| + | 5 cp passwd /etc/passwd- |
| + | 6 cp /etc/gshadow- /etc/gshadow |
| + | 7 cp /etc/shadow- /etc/shadow |
| + | 8 cp /etc/subgid- /etc/subgid |
| + | 9 cp /etc/subuid- /etc/subuid |
| + | |
| + | - [[start.sh>./start.sh]] |
| #br | | #br |
| | | |
| *** Trouble Shooting [#k2b34ff3] | | *** Trouble Shooting [#k2b34ff3] |
| + | **** 何故かイメージを変更して commit すると引数が2重になる? (''非常に重要な問題'')[#xeab91b6] |
| + | - docker logs のでエラーメッセージ |
| + | -- [C 2021-07-11 13:52:21.786 SingleUserNotebookApp application:89] Bad config encountered during initialization: Error loading argument SingleUserNotebookApp.ip=['0.0.0.0', '0.0.0.0'], ip only accepts one value, got 2: ['0.0.0.0', '0.0.0.0'] |
| + | - /usr/local/anaconda/envs/jupyterhub/lib/python3.8/site-packages/dockerspawner/dockerspawner.py L804 |
| + | -- get_command() の cmd + self.get_args() で cmd に既に引数が入っている? |
| + | - 最新版 (Project用) [[jupyterhub_config.py>../SystemUserSpawner/jupyterhub_config.py]] 内で対症療法中 |
| + | #br |
| + | |
| **** 新しいファイルがパーミッションが無いとして,作成できない. [#z72fb1be] | | **** 新しいファイルがパーミッションが無いとして,作成できない. [#z72fb1be] |
- | -- SystemUserSpawnar の場合は,まず現実のファイルのパーミッションをチェック, | + | - %%SystemUserSpawnar の場合は,まず現実のファイルのパーミッションをチェック%% |
- | -- Docker に入って,ファイルのパーミッションをチェック, | + | - コンテナ内 に入って,ファイルのパーミッションをチェック. (力ずく!) |
| + | - start.sh の設定がダメダメだった. |
| + | -- start.sh 内でパーミッションを設定すれば OK |
| #br | | #br |
| + | |
| ** Hack [#gdd93e11] | | ** Hack [#gdd93e11] |
| | | |
| -- self.format_string() を通すと {...} を処理してくれる. | | -- self.format_string() を通すと {...} を処理してくれる. |
| | | |
- | - ''注:''[[SystemUserSpawner>../SystemUserSpawner]] が正しく動けば, コンテナ内で環境変数 NB_USER で取れるので不要か. | + | - ''注:''[[SystemUserSpawner>../SystemUserSpawner]] が正しく動けば, コンテナ内の環境変数 NB_USER で取れるので,''以下のコード修正は不要''. |
| + | -- さらに jupyterhub_config.py 内などで新しい Class を定義してやれば,グループ名も取れる! |
| #br | | #br |
| | | |