DeepLearning Ami をSageMakerみたいに使う

主旨

AWS SageMakerはデータを貯める、学習する、デプロイする、というのは便利だが、
実際にあるデータをゴニョゴニョいじるには、癖がある。
特に、会社に入ってきた新人に使わせるには覚えさせることが多すぎる。

そんなわけで、立ち上げたら簡単にJupyterノートブックが見えるEC2を作ってみました。
基本的に、DeepLearningAmiをベースに、下記の変更を加えます。

手順1

下記のファイルを新規で置きます。
起動時にスタートアップで実行するスクリプトです。

# systemディレクトリを作ります。
mkdir system
# cat でスクリプトを書き込みます
cat > system/start.sh
下記ペーストして、Ctrl+Dで終了。
#!/bin/bash
jupyter notebook --ip=* --no-browser --config=/home/ubuntu/.jupyter/jupyter_notebook_config.py &
logger 'juyter start...'

手順2

/etc/rc.localを変更します。
なければ下記のようなファイルで新規に置きます。
sudo vi /etc/rc.local
で編集します。

su -l ubuntu -c 'sh /home/ubuntu/system/start.sh'
exit 0

手順3

シェルで下記を実行します。
jupyterの設定を変更しています。
とくに、トークンでパスワードを設定しています。(変更して使ってください。)
あとブラウザが必要ない状態で立ち上がる。
start.shに実行権限を付与。

echo c.NotebookApp.token = "password" >> .jupyter/jupyter_notebook_config.py 
chmod +x /home/ubuntu/system/start.sh 

上記でうまくいかなかった、手順4

jupyter_notebook_configの書き込みに失敗しました。
“password”がpasswordになってしまって、クオーテーションが消えてしまっていた。
手動で対応する必要あり。echoじゃどうすればいいのか、なんかありそうだけど。。

vi .jupyter/jupyter_notebook_config.py

で最後の行のpasswordを”password”に変更

广告
将在 10 秒后关闭
bannerAds