Edited at
PythonDay 3

DockerでJupyterを起動するまで

More than 3 years have passed since last update.

これは、Python Advent Calendar 2015の3日目の記事です。


何をするのか?

WindowsやMacで、いろいろなパッケージを含めてJupyter(IPython Notebook)を使おうとすると、インストールが大変です。そこで、今回は、Dockerを使って、Windows(64ビット)上にJupyterを起動するまでを、説明します。利用できるパッケージは、DockerHubをご確認ください。

サクッとやりたい場合は、Docker Toolboxを使う方法を見てください。

いろいろ試したい場合は、Ubuntuを入れてDockerを使う方法を見て下さい。


Docker Toolboxを使う方法

Docker Toolboxを使うことで、簡単にDockerを使えるようになります。

Docker Toolboxをインストールすると、下記のソフトウェアが使えるようになります。


  • Docker Client:シェルで操作

  • Docker Machine:ホストの作成

  • Docker Compose:複数コンテナ操作

  • Docker Kitematic:GUIで操作

  • VirtualBox:仮想OS(CoreOS)の実行


Docker Toolboxのインストール

Docker Toolboxからインストーラをダウンロードして、インストールしてください。


Kitematicの起動

Docker Toolboxの中のKitematicを使うと、GUI上からDockerを操作できます。Kitematicを起動してください。

下記のように検索テキストに[tsutomu7/jupyter]を入れて、[CREATE]ボタンを押してください。

1.png

しばらくすると、ステータスが[RUNNING]になります。右下の[VOLUMES]の[/jupyter]をクリックし、[Enable Volumes]を選ぶとWindows上にファイルを保存できるようになります。[WEB PREVIEW]の下をクリックするとブラウザが起動してJupyterを使うことができます。

2.png

ブラウザで右上の[New]から[Python3]を選んでください。

3.png

[Untitled1.ipynb]が開いたら、「!conda list」を打ち込んで、[Shift+Enter]を押すと、インストールされているパッケージの一覧が表示されます。


Ubuntuを入れてDockerを使う方法

下記について順番に説明します。


VirtualBoxのインストール

Download VirtualBoxから自分のOSのインストーラをダウンロードしインストールしてください。

必須ではないですが、エクステンションパックの導入をしておくと便利です。


Ubuntuのインストール

仮想ハードディスクイメージのダウンロードから、Ubuntu 14.04 LTS1のディスクイメージをダウンロードし解凍してください。


仮想マシンの登録と起動

VirtualBoxを起動し、[新規]を押してください。下記のように指定し、次へ行きます。

4.png

メモリーサイズは、2048MB以上を推奨します。後で変更可能です。

ハードディスクは、[すでにある…]を選択し、右のアイコンをクリックし、解凍したUbuntu 14.04 LTSのディスクイメージを指定し、[作成]ボタンを押してください。

5.png


Ubuntuの設定

Ubuntu14.04を選んで、[設定]を押してください。

[一般]の[高度]で下記のように設定すると便利になります。

6.png

エクステンションパックの導入をしていれば、下記のように設定することにより、リモートデスクトップで[ホストのIPアドレス:13389]にアクセスして使うことができます。

7.png

[ネットワーク]の[アダプター2]を選んで下記のように設定してください。

[アダプター1]の設定はそのままにしてください。

8.png

設定の意味についてはネットワーク設定を参照してください。


Ubuntuの起動とDockerのインストール

[起動]を押してUbuntuを起動し、ログインしてください。


aptの更新

下記のように実行します。(以降1行ずつコピペ推奨)


ubuntu

sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D

sudo gedit /etc/apt/sources.list.d/docker.list

エディタが開くので、下記の内容にして保存終了ください。

「deb https://apt.dockerproject.org/repo ubuntu-trusty main」


linux-image-extraの更新

下記のように実行します。


ubuntu

sudo apt-get update

sudo apt-get install linux-image-extra-$(uname -r)


Dockerのインストール

下記のように実行します。


ubuntu

sudo apt-get update

sudo apt-get install docker-engine
sudo service docker start

「docker --version」でバージョンを確認できます。

詳細は、Installation on Ubuntuを参考にしてください。


非rootユーザでdockerコマンドを使うには

下記を実行し、ログインし直してください。


ubuntu

sudo gpasswd -a $USER docker



Jupyterの起動

Dockerでサーバを起動し、ブラウザで確認します。


IPアドレスの確認

下記を実行し、[inet]の後ろのIPアドレスを覚えてください。このアドレスは、Windowsでブラウザを開くときに使います。


ubuntu

ip addr show eth1



Jupyterのサーバの起動

下記を実行するだけです。


ubuntu

mkdir jupyter

docker run -d -p 8888:8888 -v $(pwd)/jupyter:/jupyter tsutomu7/jupyter


Jupyterのクライアントの確認

Windowsのブラウザで上で確認した「http://確認したIPアドレス:8888」を開いてみてください。

Python3.5のJupyterが起動します。

Ubuntuのブラウザで見る場合は、「http://172.17.0.2:8888 」を見てください。


Jupyterのサーバの終了

サーバの終了は、下記のように行います。


ubuntu

docker stop $(docker ps -aq)



Jupyterのサーバの再起動

サーバの再起動は、下記のように行います。


ubuntu

docker start $(docker ps -aq)






  1. 2015/10/23では、Ubuntu 15.10が最新ですが、長期保証版(LTS)の最新は、14.04です。