自分用にまとめたメモです.
設定のいくつかは意味まで把握しているわけではありません.
サーバはubuntu,ローカルはUNIX系OSです.
1. JupyterLabのインストール (サーバでの作業)
まずインストールからconfig
ファイル作成まで
$ pip install jupyter
$ pip install jupyterlab
$ pip install --upgrade "ipython[all]"
$ python -c 'from notebook.auth import passwd;print(passwd())' # パスワードを設定
Enter password:
Verify password:
sha1:***** # ここで表示される文字列をコピーしておく
$ jupyter notebook --generate-config # configファイルが作成される
2. 作成されたconfig
ファイルの編集 (サーバでの作業)
作成されたconfig
ファイルに以下の内容を追記 (もしくは該当箇所のコメントを外して適切な内容に書き換える)
jupyter_notebook_config.py
c = get_config()
c.IPKernelApp.pylab = 'inline'
c.NotebookApp.allow_origin = '*' # 外部通信も含めて使用可能に (?)
c.NotebookApp.ip = '0.0.0.0' # どのIPアドレスからもアクセスを許可
c.NotebookApp.password = 'sha1:*****' # 先ほどコピーした文字列をここに
c.NotebookApp.open_browser = False # ブラウザの自動起動を無効化
c.NotebookApp.port = [abc] # jupyter lab自体が使うポート番号の指定
c.NotebookApp.notebook_dir = '<DIRPATH>' # デフォルトで開くディレクトリの指定
3. ローカルマシンの./ssh/configを編集
次の一行を追記
LocalForward [def] localhost:[abc]
これでlocalhost
(リモートマシン,サーバ) のabc番のポートを,ローカルマシンのdef番ポートに渡してくれる.ブラウザで起動する時には,URL中にdef
が入るはず...