Docker Images† [edit ]
jupyterhub/singleuser† [edit ]
jupyter/datascience-notebook† [edit ]
jupyter/tensorflow-notebook† [edit ]
rattydave/jupyterhub† [edit ]
jupyter/base-notebook† [edit ]
ベースになるイメージに以下の物が含まれていない可能性がある.† [edit ]
start-notebook.sh
anaconda
conda
jupyterhub-singleuser
juoyterlab (言わずもがな2)
sudo
lab へのアクセスで 404 Not Found になる.tree (notebook) へのアクセスは可† [edit ]
vhtec
/opt/conda/etc/jupyter/jupyter_notebook_config.json をチェックする.(jupyterlab: false になっていたら true に変える)
jupyter serverextension enable --py jupyterlab --sys-prefix でもOK.上記ファイルは {} となる.
ファイルを削除(trachへリネーム)しようとすると,OSError: [Errno 18] Invalid cross-device link: のエラーが出る.
/opt/conda/lib/python3.6/site-packages/send2trash/plat_other.py", line 117 で os.remove() する.
shutil.move(src, op.join(filespath, destname)) の方が自然.要 import shutil
docker run -dit --init --name コンテナ名 イメージ名
コンテナにログイン† [edit ]
docker exec -it コンテナ名 /bin/bash
/opt/conda/bin/tini
/usr/local/bin/start-notebook.sh
/usr/local/bin/start-singleuser.sh
/usr/local/bin/start.sh
Example
install_c_kernel
jupyter kernelspec list
jupyter kernelspec uninstall cling-cpp17
docker commit すると,起動時のオプション(arguments)まで保存する.† [edit ]
何故かイメージを変更して commit すると引数が2重になる? (非常に重要な問題 )† [edit ]
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 内で対症療法中
上記の Dockerfile を使って作成すれば問題無し
次回起動すると,オプションが 2重になる.なんてこったい! docker build では大丈夫(そもそも起動していない)
起動時のオプションは,イメージ(/var/lib/docker/image/overlay2/imagedb/....)に Cmd[ ] に値として保存されている.
イメージファイルはテキスト(!?)なので,Cmd[ ] に何が書いてあるかわかる.
"Cmd":["start-notebook.sh","--ip=0.0.0.0","--port=8888","--notebook-dir=/home/teacher/iseki/jupyter","--SingleUserNotebookApp.default_url=/lab"]
流石に直接編集するのは躊躇われる.(一回やってみる?)
エディタで直接編集したら,Docker から見えなくなった.まあ予想通り.
ちゃんと動くやつの Cmd[ ] を確認して,docker commit 起動時に -C オプションで変更可!
jupyter の場合: docker commit -c 'CMD ["start-notebook.sh"]' jupyter_old jupyter_new
/etc/passwd と /etc/group も元に戻しておく
Last-modified: 2023-08-29 (火) 11:55:18