大学のサーバでどうしてもJupyter Notebookが動かしたいのでメモ。
経緯
データをSQLiteで管理しており,これのサイズが10Gを超え始めた。計算などは大学のサーバで行なっているのであるが,RやJupyterなどビジュアルなツールを使いたい時にはいちいちローカルのPCへSQLiteをコピーするのが大変。
以前Xサーバを使ったリモートでの起動を試したが,どうも使いづらい。
Macからだと,XQuartzをあらかじめMacにインストールしておき,
以下のSSHコマンドで接続し,
[mac] $ ssh -Y remotehost
Jupyterを起動するだけ。
[server] $ jupyter notebook
これで,リモートサーバでFirefoxが立ち上がり,MacのXQuartzで表示される。
しかしこれがいかんせん使いづらい。遅いし,サーバ側のFirefoxなので見た目も悪く,日本語入力も一苦労。
設定
Jupyter
まずはここを参考に設定する。
$ jupyter notebook --generate-config
~/.jupyter/jupyter_notebook_config.pyを編集。ポートが8080が空いている場合には以下のように指定する。
c.NotebookApp.ip = '0.0.0.0' c.NotebookApp.open_browser = False c.NotebookApp.port = 8080
R
Rも使いたいので,ここを参考にRを起動してインストール。
install.packages(c('repr', 'IRdisplay', 'crayon', 'pbdZMQ', 'devtools')) devtools::install_github('IRkernel/IRkernel') IRkernel::installspec()
起動
$ jupyter notebook [I 17:43:07.065 NotebookApp] Serving notebooks from local directory: /tmp [I 17:43:07.066 NotebookApp] 0 active kernels [I 17:43:07.066 NotebookApp] The Jupyter Notebook is running at: [I 17:43:07.066 NotebookApp] http://0.0.0.0:8080/?token=37e418b82da8472bf89798f70a92dda90003f61509xxxxx
起動時に現れるこれから,
http://0.0.0.0:8080/?token=37e418b82da8472bf89798f70a92dda90003f61509xxxxx
以下のようにPCのブラウザのアドレスバーに打ち込めばOK
http://server:8080/?token=37e418b82da8472bf89798f70a92dda90003f61509xxxxx