AWSのサーバーでJupyterを動かす[AWS][Jupyter]

7月 27, 2020

f:id:Vastee:20181220134750p:plain

AWSにサーバーを立てて、Jupyterをインストールした時のことをレポート。

まずは、LightsailでAWSにサーバーを立てる。

Lightsailサーバーのインストール自体はすごく簡単で、料金も月3.5ドル〜と安価なので、気軽に使えると思う。

aws.amazon.com

次に、立てたサーバーにsshログインし、

pip install jupyter

を打ち込む。

次に、ipythonでJupyterログイン用のパスワードを生成。

ここで生成したパスワードは後で使うのでメモしておく。

ipythonコマンドを打ち込み、ipythonコンソールを起動。

以下のコマンドで、パッシュ化されたパスワードを生成。

In [1]: from notebook.auth import passwd
In [2]: passwd()
Enter password: [任意のパスワードを入力]
Verify password: [確認のため再度入力]
Out[2]: 'sha1: [ハッシュ化されたパスワード]'

Jupyter内で生成されるファイルの保存先を生成。

mkdir ~/.jupyter

そして設定ファイルの編集。

vim ~/.jupyter/jupyter_notebook_config.py

jupyter_notebook_config.py

c = get_config()
# Notebook上でplotを表示できるようにする
c.IPKernelApp.pylab = 'inline'
# リモートアクセスを許可
c.NotebookApp.allow_remote_access = True
# 全てのIPから接続を許可
c.NotebookApp.ip = '*'
# IPython notebookのログインパスワード (序盤に生成したハッシュ化されたパスワード)
c.NotebookApp.password = 'sha1:xxxx'
# 起動時にブラウザを起動させるかの設定
c.NotebookApp.open_browser = True
# ポート指定 (ここでは8888に設定)
c.NotebookApp.port = 8888

設定後、jupyter notebookを入力し、Jupyterを起動する。

次に、AWS lightsailのコンソール上でインスタンスのネットワーク設定を開く。

その中のファイアウォールのポートを追加。

今回はポートを8888に設定したので、Custom TCP 8888を追加。

f:id:Vastee:20190421095730p:plain

上の画面で静的アドレスを確認し、ChromeなどのWebブラウザの入力欄にアドレス:ポート(例 http://xx.xx.xx.xx:8888)を入力し、Jupyterへの接続を行う。

接続時、パスワードを聞かれるので、序盤のパスワードを入力。

すると、Jupyterが使えるようになっているはずだ。

AWS,Jupyter

Posted by vastee