【JupyterNotebook】外部からリモートで接続する

 

JupyterNotebookはローカルで動かすこともできますが、Ubuntuなどのサーバで動かしておくといつでもブラウザでアクセスしてPythonコードを実行できるので便利です。

 

UbuntuでAnacondaをインストールすると、Jupyter Notebookが一緒に入ってきます。

 

そのままではリモートアクセス出来ないのでその設定方法や、screenを使ってUbuntuでjupyternotebookを常時稼動させる方法をご紹介します。

 

 

リモートアクセスの設定

 

設定ファイルを作成します。

 

 

jupyter_notebook_config.pyと言う設定ファイルが作成されるので、それを編集します。

 

 

以下のIPアドレスに関する設定項目がありますのでそれを検索します。vimだと”/検索ワード”と打つと検索できます。次のワードに行くときには”n”でいけます。

 

 

以下のように書き換えます。

 

 

以下のコマンドでサーバを起動します。

 

 

tokenはパスワードを設定するときに必要なので覚えておいてください。このtokenはサーバを起動するたびに変わります。token=と言うのが2回続いていますが同じ文字列なので片方のみで良いです。

 

ブラウザで「http://サーバのIP:8888」と入力すると以下のページが表示されます。

 

 

Setup a PasswordでTokenを入れて、新しいパスワードを設定するとサーバにログインできるようになります。

 

screenでサーバを常時稼働させる

 

macのコンソールやWindowsのTeratermでssh接続してjupyter notebookサーバを動かしていると、コンソールを閉じたときにjupyterも止まってしまいます。

 

そうならないようにscreenを使って、セッションを作成して管理しましょう。

 

セッションの作成

 

セッションから離れる

 

セッションの一覧を確認

 

32377と言うのはpidです。セッションが複数あるときはこれを指定してセッションを再開します。

 

セッションの再開

 

セッションを再開したら、以下のコマンドでjupyterのサーバを動かしておきましょう。

 

 

これで、sshが切れてもサーバは稼働し続けます。

 

以上です。お疲れ様でした。

ABOUTこの記事をかいた人

のっくん

理系院卒で大企業の研究所に就職。 趣味はプログラミング、レアジョブ英会話、筋トレ、旅行。 Twitter:@yamagablog