概述:基於Docker的TensorFlow機器學習框架搭建和實例源碼解讀,TensorFlow做爲最火熱的機器學習框架之一,Docker是的容器,能夠很好的結合起來,爲機器學習或者科研人員提供便捷的機器學習開發環境,探索人工智能的奧祕,容器隨開隨用方便快捷。源碼解析TensorFlow容器建立和示例程序運行,爲熱愛機器學者下降學習難度。python
默認機器已經裝好了Docker(Docker安裝和使用能夠看我另外一篇博文:Ubuntu16.04安裝Docker1.12+開發實例+hello world+web應用容器)。linux
docker pull tensorflow/tensorflow
#或者
#sudo docker pull tensorflow/tensorflow
docker run --name xiaolei-tensortflow -it -p 8888:8888 -v ~/tensorflow:/notebooks/data tensorflow/tensorflow
docker run
運行鏡像,--name
爲容器建立別名,-it
保留命令行運行,-p 8888:8888
將本地的8888端口http://localhost:8888/
映射,-v ~/tensorflow:/notebooks/data
將本地的~/tensorflow文件夾掛載到新建容器的/notebooks/data下(這樣建立的文件能夠保存到本地~/tensorflow)tensorflow/tensorflow
爲指定的鏡像,默認標籤爲latest(即tensorflow/tensorflow:latest)New
一個Python項目from __future__ import print_function
#導入tensorflow
import tensorflow as tf
#輸入兩個數組,input1和input2而後相加,輸出結果
with tf.Session():
input1 = tf.constant([1.0, 1.0, 1.0, 1.0])
input2 = tf.constant([2.0, 2.0, 2.0, 2.0])
output = tf.add(input1, input2)
result = output.eval()
print("result: ", result)
result: [ 3. 3. 3. 3.]
#關閉tensorflow容器
docker stop xiaolei-tensortflow
#開啓TensorFlow容器
docker start xiaolei-tensortflow
#瀏覽器中輸入 http://localhost:8888/
#查看讀寫權限
ls -l
#將tensorflow 變爲屬於xiaolei(系統默認)用戶
sudo chown -R xiaolei tensorflow/
#將tensorflow 變爲屬於xiaolei(系統默認)用戶組
sudo chgrp -R xiaolei tensorflow/