case1では、ソースは "Docker HUb"を用い、実行は "exec" コマンド でコンテナ内のtensorflowを実行します。また、本ページの親ページはこちらにあります。
前提条件
Singularity がインストールされていること
DockerHub上のtensorflowからSingularityコンテナーを作成する
Singularity コンテナーの作成
このコマンドにより、Doker Hub から localに Tensorflowがインストールされたイメージがダウンロードされ、Sigularity用コンテナーが自動的に生成されます。
command@host
CONTAINER_NAME="container.img"
SOURCE_IMAGE="docker://tensorflow/tensorflow"
command@host
singularity build ${CONTAINER_NAME} ${SOURCE_IMAGE}
生成物の確認
生成物として、Singularity用のイメージがあることを確認します。
command@host
ls -l ${CONTAINER_NAME}
response@host
-rwxr-xr-x 1 vagrant vagrant 372035615 Jan 14 06:09 container.img
Tensorflowの実行 (execコマンド経由)
MNISTのサンプルスクリプトのダウンロード
command@host
wget https://raw.githubusercontent.com/tensorflow/tensorflow/r1.4/tensorflow/examples/tutorials/mnist/mnist_softmax.py
execコマンドによる MNIST on tensorflow の実行
mnist_softmax.py
を実行します。
command@host
singularity exec container.img python mnist_softmax.py
最後に数値(精度)が出力されればOKです
response@host
Extracting /tmp/tensorflow/mnist/input_data/train-images-idx3-ubyte.gz
Extracting /tmp/tensorflow/mnist/input_data/train-labels-idx1-ubyte.gz
Extracting /tmp/tensorflow/mnist/input_data/t10k-images-idx3-ubyte.gz
Extracting /tmp/tensorflow/mnist/input_data/t10k-labels-idx1-ubyte.gz
0.9184