AWSから「lightsail」というVPSサービスが開始されたので、お試しとして使ってみた。
使ってみるついでにディープラーニングの学習環境として使いたかったので
Jupyterを入れて起動させてみた。その手順をここにまとめておく。

picture978-4-87311-758-4.gif

前提

AWSアカウントをお持ちの方

lightsailの起動

chrome_2016-12-01_20-45-27.png
chrome_2016-12-01_20-47-06.png
chrome_2016-12-01_20-47-31.png
chrome_2016-12-01_20-48-58.png
chrome_2016-12-01_20-49-58.png
chrome_2016-12-01_20-51-07_Ink_LI.jpg

インスタンスの設定

ブラウザでJupyterを見たいわけなので、そのための設定をしていく。

Elastic IPの付与

毎回IPが変わるとブラウザアクセスの際、めんどくさいのでElastic IP(固定IP)をインスタンスに付与する。

chrome_2016-12-01_20-52-09_Ink_LI.jpg
chrome_2016-12-01_21-09-23.png
chrome_2016-12-03_20-08-35.png

これで固定IPがもらえた!

Nginxの設定

さぁ、次はサーバーに入ってNginxの設定だ!

chrome_2016-12-01_20-52-09.png

ここからはコンソールでの作業。
Nginxの設定ファイルを下記のように書き換える。

sudo vim /opt/bitnami/nginx/conf/bitnami/bitnami.conf
===
upstream jupyter {
    server localhost:8888;
}

server {
    listen      80;
    server_name localhost;

    allow xxx.xxx.xxx.xxx;
    deny all;

    location / {
        proxy_pass http://jupyter;

        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Origin "";
    }
}
===

JupyterをNginx経由で閲覧するための設定。
他人には当然見られたくないので

allow xxx.xxx.xxx.xxx;

のところで、自分のPCのグローバルIPアドレスを指定する。

locationのところの設定は、JupyterはWebSocketを使用するため、WebSocketの設定をする。

ここまで出来たらNginxの再起動。エラーが出なきゃおk

sudo /opt/bitnami/ctlscript.sh restart nginx

ここまで出来たらブラウザで、Elastic IP(固定IP)にアクセスしてみる。

http://xxx.xxx.xxx.xxx
chrome_2016-12-01_20-57-32.png

Jupyterの設定

まずはJupyterをインストールする前に、pipのインストールを行う。
オライリーのディープラーニングの本はPython3が前提なのでPython3用を使う。

curl -kL https://raw.github.com/pypa/pip/master/contrib/get-pip.py | python
curl -kL https://bootstrap.pypa.io/get-pip.py | sudo python3

次にJupyterのインストール。

pip3 install jupyter

Jupyter内で生成されるファイルの保存先を作成。
どこでもよい。

mkdir ~/jupyter

Jupyterの設定ファイルを生成。
そして設定ファイルの編集。

jupyter notebook --generate-config

vim ~/.jupyter/jupyter_notebook_config.py
===
# 179行目 Jupyterのファイル保存先ディレクトリの指定。上記で作成したディレクトリ。
c.NotebookApp.notebook_dir = '/home/bitnami/jupyter'
# 185行目 Jupyterを起動するとブラウザが起動して邪魔なのでOFF
c.NotebookApp.open_browser = False
===

ここまで来たらJupyterを起動しよう。

jupyter notebook

さっきNginxの動作確認の時に見たページにブラウザでアクセス

http://xxx.xxx.xxx.xxx
chrome_2016-12-03_20-07-16.png

最後に

ということで、lightsailでJupterを起動させることができた。
ほかのAWSのサービスは従量課金だが、このlightsailは定額なので初心者でも安心。
VMは重いから嫌だってひとにはおすすめ。

广告
将在 10 秒后关闭
bannerAds