自社では基本的にBigQueryにデータをぶちこんでいるので、データ解析や、機械学習にはJupyterのGoogleカスタマイズ版であるDatalabを使っています。
基本的な使い方はJupyter(IPython)と一緒です。
IPythonデータサイエンスクックブック ―対話型コンピューティングと可視化のためのレシピ集
- 作者: Cyrille Rossant,菊池彰
- 出版社/メーカー: オライリージャパン
- 発売日: 2015/12/25
- メディア: 大型本
- この商品を含むブログ (1件) を見る
BigQueryをはじめ、Storage等、Google環境に必要なライブラリは一通り入っていますが、やはり色々やろうとすると、pip installやら、apt-getやらが必要になってきます。
そこで2つ、カスタマイズ方法を紹介します。
使うパッケージは一回だけと思われる場合
コマンドでインストールします。再起動時などには消えるので、それでもかまわない場合。
まずdocker psで、datalabのコンテナIDを取得しておき、下記のコマンドを行う
docker exec {コンテナID} pip install {欲しいパッケージ名}
docker exec -it {コンテナID} bash
bashが立ち上がるのでpipとかapt-getする。
apt-getの場合は、updateしないと駄目な場合が多いので、bashで入ったほうが楽かも。
永続的に使いたい場合
自分でDockerfileを使って、拡張します。
好きな名前でディレクトリを作ってDockerfile作成
mkdir mydatalab cd mydatalab vim Dockerfile
私の場合は下記のような感じ。
FROM gcr.io/cloud-datalab/datalab:local # install from pypi RUN pip install --upgrade pip && pip install -q \ bigquery-python \ cython \ oauth2client \ sendgrid \ gensim \ scipy \ networkx \ suds RUN apt-get update && apt-get install -y \ gcc
githubからもがんばれば出来る。
ビルド
sudo docker build -t mydatalab:latest
起動
sudo docker run -d -p "8080:8080" \ -v "/path/to/content:/content" \ mydatalab:latest
ビルドとか起動とかはシェルスクリプト化しておくと便利
ただCloud Datalabは、Google社内と同じくPython2.7なのでPython3にしかないものを使うときはいろいろと大変そう。まだ困ったことはない。
プログラマのためのDocker教科書 インフラの基礎知識&コードによる環境構築の自動化
- 作者: WINGSプロジェクト阿佐志保
- 出版社/メーカー: 翔泳社
- 発売日: 2015/11/19
- メディア: Kindle版
- この商品を含むブログ (3件) を見る
Dockerエキスパート養成読本[活用の基礎と実践ノウハウ満載!] (Software Design plus)
- 作者: 杉山貴章,大瀧隆太,Yugui(Yuki Sonoda),中津川篤司,前佛雅人,松原豊,米林正明,松本勇気
- 出版社/メーカー: 技術評論社
- 発売日: 2015/06/18
- メディア: 大型本
- この商品を含むブログ (2件) を見る