昨日はXした
- コンソールさわるの飽きた
- Windows側でコード書きたい
- デーモンとして動いてて欲しい
それjupyterで
できた
- 注意:セキュリティ無視、ポート開放に気を付けてください
- 前提の環境は昨日Xしたのと同じ
- Docker for Windows のみ
コンセプト
- Ubuntu(ベース80MBくらい?)
- Python3(標準ではいってる)
- Chainer v4.0.0(stableなやつ)
- 340MBくらいになった
- もっとまじめに小さくするならtiniとか入れるのかな
- あとUbuntuでなくAlpineにするか
成果物
- つぎの3ファイルを同じフォルダにおいて
jupyter_up.bat
を叩く
docker-compose.yml
version: '3'
services:
jupyter:
build: .
volumes:
- C:\data:/data
ports:
- "8888:8888"
Dockerfile
FROM ubuntu
RUN apt-get update -y \
&& apt-get install -yq --no-install-recommends \
python3-setuptools \
python3-pip \
&& rm -rf /var/lib/apt/lists/* /var/cache/apt/archives/* \
&& python3 -m pip install --upgrade pip \
&& python3 -m pip install --no-cache-dir wheel jupyter matplotlib numpy==1.13 chainer==4.0.0
EXPOSE 8888
CMD ["jupyter", "notebook", "--allow-root", "--no-browser", "--NotebookApp.token=''", "--ip=0.0.0.0"]
jupyter_up.bat
pushd %~dp0
docker-compose up -d --build
popd
timeout 1
start http://localhost:8888/
お約束のMNIST
- Windows側で
C:/data
以下にtrain_mnist.pyを取得しておく - ブラウザでdata以下のフォルダを辿り
train_mnist.py
があるフォルダに移動する - Jupyterのメニュー
New -> Python3
でnotebookをつくる
notebook_Codeセル
%run -i train_mnist.py
notebook_Markdownセル_Code実行後に確認用
- accuracy
<img src="result/accuracy.png">
- loss
<img src="result/loss.png">
- うえのをipynbに保存したらこう
train_mnist.ipynb
{
"cells": [
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"scrolled": false
},
"outputs": [],
"source": [
"%run -i train_mnist.py"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"- accuracy\n",
"<img src=\"result/accuracy.png\">\n",
"- loss\n",
"<img src=\"result/loss.png\">"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.5"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
おわり