Help us understand the problem. What is going on with this article?

JupyterLabをcloud9で起動させる

More than 1 year has passed since last update.

JupyterLabのβ版が公開されたので、早速お手軽開発環境のcloud9で動かしてみます。

今回やる事

  • jupyterlabのインストール
  • cloud9向けの起動方法
  • 設定ファイルの生成

1.jupyterlabのインストール

minicondaを使うとかインストール方法はそれぞれ用意されているけど、今回はpipでインストールします。

cloud9のpythonは2.7がdefaultなので事前にpython環境を整えてからsudo pip install jupyterlabを実行すればインストールOK.

一応、インストール後にjupyter notebook --versionを実行して4.3以上が出ることがJupyerLab実行に当たっての要求です。ちなみに僕が試したcloud9環境では5.4.0が出ました。

2.cloud9向けの起動方法

JupyterLabではJupyterNotebook等と同様に、デフォルトのポートが8888なので、8080,8081,8082ポートがアプリケーション向けに許可されているcloud9では少し具合が悪いです。
そこで、cloud9でも問題なく起動できるよう下記のようにJupyterLab起動時にポートを指定するようにします。

jupyter lab --port $PORT --no-browser

--no-browserオプションをつけておくと起動時にブラウザの立ち上げ処理をスキップしてくれます。

3.設定ファイルの生成

実行時に毎回ポート番号やブラウザ表示の設定を指示するのは億劫なので、設定ファイルに書き込んでおくことにします。

JupyterLabインストール後にjupyter lab --generate-configを実行すると、~/.jupyter/フォルダ下にjupyter_notebook_config.pyが生成されます。
このファイルを弄って先ほどの設定とパスワードの有無やホームディレクトリ等の設定を編集しておきましょう。

ホームディレクトリ設定

jupyter_notebook_config.py(L214)
## The directory to use for notebooks and kernels.
#c.NotebookApp.notebook_dir = ''

パスワード設定

パスワード設定についてはtokenとpasswordの2種類の設定がありますが、passwordの方が平文をファイルに保存しないで済むので今回はpassword認証を設定します。

jupyter_notebook_config.py(L229)
## Hashed password to use for web authentication.
#  
#  To generate, type in a python/IPython shell:
#  
#    from notebook.auth import passwd; passwd()
#  
#  The string should be of the form type:salt:hashed-password.
#c.NotebookApp.password = ''

上記のコメントにあるようにfrom notebook.auth import passwd; passwd()を下記のように実行して結果をコピペすればOKです。

パスワード生成処理
$ python -c "from notebook.auth import passwd; print(passwd())"
Enter password: 
Verify password: 
sha1:c327ac671bae:83fea40ed53f05cec23d2d5b15976d22ac3646a9
#↑の一行を丸ごとコピペする

ポート設定

jupyter_notebook_config.py(L240)
## The port the notebook server will listen on.
#c.NotebookApp.port = 8888

ブラウザ表示設定

jupyter_notebook_config.py(L220)
## Whether to open in a browser after starting. The specific browser used is
#  platform dependent and determined by the python standard library `webbrowser`
#  module, unless it is overridden using the --browser (NotebookApp.browser)
#  configuration option.
#c.NotebookApp.open_browser = True

設定を終えたら`jupyter lab'で起動させ、http://{workspace}-{username}.c9users.io:8080/labから下記のような画面に移動できたら、起動確認OKです。

aass.jpg

hahifu
C#メインのSEでした。最近はJS,pythonで遊ぶことが多いです。 ※ 記事の内容は僕の個人的な見解です。所属する/所属していた組織とは関係ありません。
https://github.com/hahifu
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away