当前位置: > Linux服务器 > Docker >

docker容器下tensoflow的cpu运行环境的构建

时间:2016-06-01 17:49来源:linux.it.net.cn 作者:IT

docker彻底释放了虚拟化的威力,极大降低了云计算资源供应的成本,同时让应用的部署、测试和分发都变得前所未有的高效和轻松!

正因为如此,tensorflow提供了docker的安装方法,极大的减轻了我们前期安装部署的工作。

docker教程:
https://www.gitbook.com/book/yeasy/docker_practice/details

tensorflow源码中提供4个Dockerfile文件 https://github.com/tensorflow/tensorflow/tree/master/tensorflow/tools/docker:
1.Dockerfile为tensorflow的cpu运行环境
2.Dockerfile.devel为tensorflow的cpu开发环境
3.Dockerfile.gpu为tensorflow的gpu运行环境
4.Dockerfile.devel-gpu为tensorflow的gpu开发环境

图1:4个Dockerfile文件

本文采用的系统为ubuntu14.04,ubuntu安装docker参考 https://docs.docker.com/engine/installation/linux/ubuntulinux/。
由于tensorflowr的文档https://github.com/tensorflow/tensorflow/blob/master/tensorflow/tools/docker/README.md 里提到的gcr.io站点的镜像被墙,所以不能正常pull其站点的镜像,所幸的是goole也在hub.docker.com上提供了官方镜像 。链接地址为 https://hub.docker.com/r/tensorflow/tensorflow/ ,打开链接我们可以发现Repo Info和Tags,Repo Info是对用法的简单的描述,而Tags里则是各个版本的镜像。从Tags可以发现版本带”-devel”的镜像明显大于不带”-deve”的镜像,我们可以从各个对应的Dockerfile里寻找踪迹,主要是”-devel”的镜像里多装了jdk、bazel等编译源码所需的软件。

接下来,执行下面命令将0.8.0rc0版本的镜像pull到本地。
docker pull tensorflow/tensorflow:0.8.0rc0

pull成功后,执行 docker images 可以看到docker目前包含的镜像:

执行 docker run -it -p 8888:8888 tensorflow/tensorflow:0.8.0rc0 ,由以下图片可以发现,此命令在tensorflow/tensorflow:0.8.0rc0容器中开启了notebook的服务,为什么开启这个服务可以参考 图1的Dockerfile的文件,在文件的尾巴有CMD [“/run_jupyter.sh”],此命令执行了./run_jupyter.sh,而run_jupyter.sh脚本执行了开启notebook的服务 jupyter notebook “$@”

打开浏览器,http://localhost:8888就可以在浏览器中运行tensorflow提供的demo,也可以自己尝试修改程序和运行。


打开另一个终端,执行docker ps,可以查看目前正在运行的容器

从上图可以看到容器的名字为tender_bose,执行命令 docker exec -it tender_bose bash进入容器的bash,查看tensorflow的版本





(责任编辑:IT)
------分隔线----------------------------
栏目列表
推荐内容