超簡単設定
超簡単バージョンを作りました。
https://github.com/y-sama/cloud9
主に、Jupyter, Pandas, Scikit-learn, tensorflowが使えるようにしています。
git clone https://github.com/y-sama/cloud9.git
bash cloud9/init.sh
Introduction
最近某所でオンラインIDE Cloud9にJupyterをのせられるという話を聞きました。
先行記事がありますが、自分用にまとめ直します。
セキュリティ無視の最速設定なら10分弱、色々設定しても30分かからないと思います。
Cloud9で使える無料DISKは2GBですが、1.6GBほど使います。残念ながらディスクスペースを食うのでTensorflowはインストール不可です。
またシングルコアなので本気計算はできませんが、Jupyterに興味があるとか、pandasを試したいとか、scikit-learnのチュートリアルしたいとかなら十分です。
Cloud9のアカウントを作る
メールアドレスだけあればOKです。
https://c9.io/signup
適当に名前とか入れるだけです。
ここまで一分
workspaceを作る
適当なworkspaceを作ります。
一応Private設定、Templateはpythonにしていますが、別になんでもいいです。
仮想マシンが立ち上がるのにちょっとかかります。
ここまで三分
最速設定
workspaceの画面が立ち上がったら、画面の下の方にbashコンソールがあるので下記Scriptをコピペします。
git clone https://github.com/yyuu/pyenv.git ~/.pyenv
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(pyenv init -)"' >> ~/.bashrc
source ~/.bashrc
pyenv install anaconda3-4.0.0
pyenv rehash
pyenv global anaconda3-4.0.0
anacondaのダウンロードが入りますが3分くらいで終わります。
ここまで6分
Jupyter起動
jupyter notebook --ip 0.0.0.0 --port 8080 --no-browser
セキュリティ超甘ですがとりあえずならこれで動きます。
https://<workspace>.<username>.c9users.io
からJupyterにアクセスできます。
httpsなのでそこだけ注意。
ここまで7分
最速なら10分かからないで環境が用意できます
Anacondaの設定
Anacondaじゃなくてminicondaを入れている場合はこれくらい入れておけば多分OK。
conda install jupyter scikit-learn bokeh seaborn pandas dask networkx numba pep8 pillow scikit-image sqlalchemy sqlite statsmodels sympy xlrd xlsxwriter xlwt
Anaconda周りはこれくらい設定しておけばいいです。
conda update conda #condaのバージョンはよくあがるので、一応チェックしておく
echo 'alias activate="source $PYENV_ROOT/versions/anaconda3-4.0.0/bin/activate"' >> ~/.bashrc
source ~/.bashrc
conda install seaborn # anacondaに入っていないので入れておく
Jupyterの設定
Cloud9はどこからでもアクセスできてしまうので、passwordくらいは設定しておいた方がよいです。
- コンフィグファイルを作る
- Jupyterアクセス時のパスワード用のハッシュ文字列を生成する。
mkdir ~/workspace/jupyter
jupyter notebook --generate-config
#>>> Writing default config to: /home/ubuntu/.jupyter/jupyter_notebook_config.py
python -c "from notebook.auth import passwd;print(passwd())"
#>>> Enter password: #Jupyterのアクセス時に使うパスワードを入力する
#>>> Verify password:
#>>> 'sha1:......' #sha以降をコピーしておく
- jupyter_notebook_config.pyを編集する。
vi ~/.jupyter/jupyter_notebook_config.py
jupyter_notebook_config.pyの編集箇所
変更箇所 | 初期値 | 変更後 |
---|---|---|
c.NotebookApp.ip | 'localhost' | '*' |
c.NotebookApp.notebook_dir | null | '/home/ubuntu/workspace/jupyter' |
c.NotebookApp.open_browser | True | False |
c.NotebookApp.port | 8888 | 8080 |
c.NotebookApp.password | null | 'sha1:......' #さっきのハッシュ文字列 |
これもセキュリティ的には甘いので、常にJupyterを立ち上げておきたいのなら、IPアドレスを制限するとかしてください。
startupの設定
~/.ipython/profile_default/startup
の中に.pyや.ipyを配置しておくと、Ipythonのkernelスタート時に読み込まれます。
00_start.ipy
のようなファイルを置いておけば、Jupyter立ち上げ時にいちいち打ち込まなくていいので楽です。.ipy形式はipythonのマジックコマンドも書けます。
import os,sys
import numpy as np
import pandas as pd
import seaborn as sns
%matplotlib inline
extensionのインストール
IPython拡張機能詰め合わせ、プレゼン用の拡張機能RISE、Jupyter内の文書検索jupyter_cmsを入れておきます。
cd ~/
git clone https://github.com/ipython-contrib/IPython-notebook-extensions
cd IPython-notebook-extensions
python setup.py install
cd ../
git clone https://github.com/damianavila/RISE
cd RISE
python setup.py install
pip install jupyter_cms
jupyter cms quick-setup --sys-prefix
IPython-notebook-extensionsのQiita記事
Drag&Dropとか便利です。
起動
jupyter notebook
ファイルをjupyter.shとかで保存して一回Runしておくと、次回以降はlast Run一発で起動できるので楽です。
https://<workspace>.<username>.c9users.io
でJupyterに入れます。
おもちゃとしては最高です。