jupyterを使った。それだけ1。

2017年8月10日

久しぶりの更新です。

今までpython使ってたのに、jupyter使ったことなかったので、その設定メモそのほかを書き連ねようかと思います。

jupyterとの出会い

いままで解析とかしてきたけど、実際のところ普通にpython xxx.pyでまぁまぁそれで事足りた。
んでも、なんかよくjupyterみるし、、隣で使ってるし、kaggleもねぇ。。。。やってみるか。という至って普通の経緯
書いて気づいたんだけど、木星はjupiter。こっちはjupyter。しゃれてんな

入れた

まぁanacondaの人はconda install jupyter とかで、、、pipでも入る。
numpyとか必要な条件はあるけど、
pipならこれで行ける。おきまりのpipアップデートや必要なパッケージを入れてからinstall
ちなみに、ipythonではなくipython[noteboo]出ないと入らない

 

やってみような

簡単だった。Notebookを開きたいフォルダに移動しといて、

$jupyter notebook

のちに、ブラウザで

http://localhost:8888/tree

叩けばいける。8888の部分はポート番号。これで最低限動いた。このとき、端末上で”untitle.ipynb”なるものが、notebookに相当して、中身はjson

お外から繋ぎたいし、サーバーで動かしたいし、パスワードかけたい

そんな設定のためにconfigファイルを作ります。コマンド叩きます。

$ jupyter notebook --generate-config

んで、~/.jupyter/jupyter_notebook_config.pyというconfigが生まれます。こいつをいじります。まずお外から繋げるようにします。
起動時に–ipオプションで許可IP設定したりして、http://<宛先IP>:<port>/tree打てば操作できるけど、あまりにも危険。ip = 0.0.0.0とかね。
ってことで、鍵を作ります。Ipythonは入れときましょうipythonを使って鍵を作って認証します。

この’sha1:XXXXXXXX’部分はコピって、jupyter_notebook_config.pyを編集します。

コメントの塊なので、解除して書き換えます。
ポートはufwに引っかからないように。

これで、http://<宛先IP>:<port>/treeでいけるようになりました。

プロキシとか通していたり、ゲートウェイ経由なら

ポートフォアディングします。sshで繋げる時に

ssh -L <port>:<host>:<hostのport> <username>@<ip_address> -Y

を通して立ち上げます。-Lはポートフォアデイング、-YはX11 で画像転送(癖でつけてる)
すると、自分の指定したportにアクセスすることでリモートのnotebookにアクセスできます。要は、

http://localhost:/tree

みたいな感じな。これで、立ち上げはできた。ガンガン使うよ。次回