15
Docker 中快速安装tensorflow环境,并使用TensorFlow。

一、下载TensorFlow镜像

docker pull tensorflow/tensorflow

二、 创建TensorFlow容器

docker run --name corwien-tensortflow -it -p 8888:8888 -v /Users/kaiyiwang/Code/ai/notebooks:/notebooks/data  tensorflow/tensorflow

命令说明

  • docker run 运行镜像,
  • --name 为容器创建别名,
  • -it 保留命令行运行,
  • -p 8888:8888 将本地的8888端口 http://localhost:8888/ 映射,
  • -v /Users/kaiyiwang/Code/ai/notebooks:/notebooks/data 将本地的/Users/kaiyiwang/Code/ai/notebooks文件夹挂载到新建容器的/notebooks/data下(这样创建的文件可以保存到本地/Users/kaiyiwang/Code/ai/notebooks
  • tensorflow/tensorflow 为指定的镜像,默认标签为latest(即tensorflow/tensorflow:latest)

执行上边的命令:

clipboard.png

我们可以看到,创建了TensorFlow容器,并给了一个默认登录JupiterNotebook的页面。

我们可以通过下面的命令在新的命令窗口看正在执行的容器,及容器所对应的映射端口

docker ps

clipboard.png

三、开启TensorFlow容器

1.可以直接从命令行中右键打开连接,或者在浏览器中输入http://127.0.0.1:8888,然后将命令行中的token粘贴上去。

clipboard.png

clipboard.png

四、开始TensorFlow编程

1、点击登录进去可以看到界面了,并且可以new一个项目

clipboard.png

2、tensorflow示例源码解读

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)

3、运行程序,输出的结果为(运行成功)

result:  [ 3.  3.  3.  3.]

五、相关命令

1、关闭或开启TensorFlow环境

#关闭tensorflow容器
docker stop corwien-tensortflow

#开启TensorFlow容器
docker start corwien-tensortflow
#浏览器中输入 http://localhost:8888/

2、文件的读写权限修改

#查看读写权限
ls -l
#将tensorflow 变为属于corwien(系统默认)用户
sudo chown -R corwien tensorflow/
#将tensorflow 变为属于corwien(系统默认)用户组
sudo chgrp -R corwien tensorflow/

六、新的安装方法

安装带有jupyter notebook的版本

docker pull tensorflow/tensorflow:latest-py3-jupyter

启动

docker run -it --rm -v /Users/kaiyiwang/Code/ai/notebooks:/tf/notebooks -p 8888:8888 tensorflow/tensorflow:latest-py3-jupyter

注意:这里映射容器里的路径必须为 /tf/ 下面的,否则notebooke 打开会找不到对应宿主机的路径。

屏幕快照 2019-11-18 01.35.52.png

屏幕快照 2019-11-18 01.35.00.png

参考文章 官方文档


Corwien
6.3k 声望1.6k 粉丝

为者常成,行者常至。