2019年10月29日火曜日

docker の中の jupyter

macのdocker内でjupyterを使うときに注意すべきこと

ポートフォワード

コンテナを作るときにポートのフォワードを設定する
docker run -p 8000:8888 --name xxx ubuntu 
とかしておくと、なかの8888で起動したものがそとで8000で使える。

バインドアドレス

jupyter 起動時にデフォルトだと127.0.0.1にバインドに行くが、これをやるとエラーが出る。
  File "/home/xxxx/anaconda3/lib/python3.7/site-packages/tornado/netutil.py", line 174, in bind_sockets
    sock.bind(sockaddr)
OSError: [Errno 99] Cannot assign requested address
これを回避するには --ip をつけて起動する。
jupyter notebook --ip 0.0.0.0
これも面倒なので、config ファイルに書く。
jupyter notebook --generate-config
とやると ~/.jupyter/jupyter_notebook_config.py というファイルができるので、 この中のc.NotebookApp.io を下記のように設定する。
c.NotebookApp.ip = '0.0.0.0'

パスワード

外からつなぐときにトークンをいちいちうつのが面倒なので、 パスワード認証にする。
jupyter notebook password
とやると聞いてくるので、適当に指定する。

0 件のコメント: