はじめに
docker-composeファイルを使ってjupyterLabの環境構築方法を記す。
JupyterLabとは、Jupyter(iPython notebook)をベースにしたインタラクティブな開発環境
必要なファイル、ディレクトリ
- docker-compose.yml
- jupyterLab環境に必要な設定などを記述するために使用する。
- workディレクトリ
ディレクトリ構成
以下のような構成図になるようにファイル、ディレクトリを作成。
.
├── docker-compose.yml
├── work
docker-compose.ymlの内容
jupyterLab環境を構築するために、docker-compose.ymlに必要な設定を記述する。
version: "3"
services:
notebook:
# https://hub.docker.com/r/jupyter/datascience-notebookからimageをpullする
image: jupyter/datascience-notebook
# ポートの設定("ホスト:コンテナ")
ports:
- "8888:8888"
# 環境変数の設定
environment:
- JUPYTER_ENABLE_LAB=yes
# ボリューム(データの永続化の場所)の設定(ホスト:コンテナ)
# ホスト内のworkディレクトリとコンテナ内の/home/jovyan/workディレクトリが紐づいているイメージ
volumes:
- ./work:/home/jovyan/work
# 最後にjupyterLabに接続するためのコマンドを実行する。
command: start-notebook.sh --NotebookApp.token=''
起動方法
docker-compose.ymlを書き終えたら、以下のコマンドを実行
$ docker-compose up -d
初回はimageのpullなどで時間がかかる。
以下のような画面が立ち上がれば成功!
補足(docker runコマンドで起動したい人向け)
個人的はdocker-composeファイルを利用して起動する方法が好みだが、docker-composeファイルを作るのが面倒な方は以下のコマンドで起動することも可能。
$ docker run --rm -p 8888:8888 -e JUPYTER_ENABLE_LAB=yes -v ./work :/home/jovyan/work jupyter/datascience-notebook
起動時、コンソールに以下のようなログが出てくるので、[トークン]の部分をコピ-。
Copy/paste this URL into your browser when you connect for the first time,
to login with a token:
http://7dae9a493ca7:8888/?token=[トークン]
すると、パスワードなどを求められるので、password欄に先ほどコピーしたtokenをペースト。
すると、jupyterLabの画面となる。
補足2
pythonライブラリをインストールしたい
pythonライブラリをインストールしたい場合は、pipコマンドを使用する。
jupyterLabの場合は、Cellで実行することができる。
!pip install [pythonライブラリ]