初衷:

由于系统、平台的原因,网上有各种版本的tensorflow安装教程,基于linux的、mac的、windows的,各有不同,tensorflow的官网也给出了具体的安装命令。但实际上,即使tensorflow安装成功,还是会遇到需要安装其他辅助工具的情况,同时,换一台机器又要面临整个环境重新安装的问题。由于docker制作一次镜像,可以拷贝重复使用的原因,在这里探讨一下在docker上制作一套完整tensorflow实验环境的流程。

搭建过程:

(1) docker安装:

既然是基于docker,首先需要使用者的机器上已经成功安装好docker环境,并能正常使用,docker的安装在此不述。

(2) 配置SSH远程登录docker:

docker的命令行界面不能复制粘贴,为了方便安装,建议使用xshell或者secureCRT连接docker:

IP地址为启动docker界面的IP,端口为22,用户名为“docker”,密码为“tcuser”

(3)镜像加速配置:

由于需要安装众多的软件,而国外资源经常被墙,配置一个国内镜像环境进行加速是个不错的选择,

daocloud.io(https://www.daocloud.io/mirror#accelerator-doc)给出了配置加速器的具体过程

(4)安装DaoCloud Toolbox

安装DaoCloud Toolbox是为了能使用 dao 命令

https://dashboard.daocloud.io/选择“我的集群”

然后选择“添加主机”

选择“我已有一台主机|windwos(根据你的环境选择)

选择“安装好了”,进入第2步“安装主机监控程序”

Docker机器启动了的话直接在输入命令2,即可安装监控程序,这样在https://dashboard.daocloud.io/即可看到自己的docker环境的运行情况了。

以上准备工作OK后,进入tensorflow实验环境的搭建及镜像制作:

(5)安装ubuntu

首先是ubuntu环境和python环境安装,跟着命令走就行了:

docker pull  daocloud.io/library/ubuntu
docker run -it ubuntu:14.04
apt-get update
sudo apt-get install python
apt-get install wget
cd tmp
wget https://bootstrap.pypa.io/get-pip.py
python get-pip.py
apt-get install make
apt-get install build-depgcc ===等待安装,这个安装失败不影响
apt-get install build-essential
apt-get install libxml2-dev libxslt1-dev
apt-get install libgsl0-dev
apt-get install python-dev
apt-get install libffi-dev
apt-get install libssl-dev

(6)安装tensorflow:

安装tensorflow 参考官网ubuntu环境下的tensorflow安装,安装命令为:

sudo apt-get install python-pip python-dev
export TF_BINARY_URL=https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.10.0-cp27-none-linux_x86_64.whl
sudo pip install --upgrade $TF_BINARY_URL

值得注意的是,安装过程中numpy会下载失败,选择从国内镜像下载安装,同时需要选择与tensorflow匹配的numpy版本,我是从中科大的镜像库下载安装的:

pip  install --index https://pypi.mirrors.ustc.edu.cn/simple/ numpy

numpy安装成功后,再次输入:

sudo pip install --upgrade $TF_BINARY_URL

将继续tensorflow的安装

安装一些工具来上传下载文件、编辑文件

sudo apt-get install lrzsz
sudo apt-get install vim-gtk

至此,环境基本配置完成了。

(7)保存镜像过程:

退出之前请记住当前用户的镜像image_ID:

退出并保存镜像:

exit
docker ps -a -q
docker commit 5efae527503c ubuntu/tensorflow

查看我们的镜像:

docker images

运行刚刚制作的镜像:

docker run -it ubuntu/tensorflow

测试安装是否成功:

下次使用时直接进入该镜像环境即可使用了

TensorFlow实验环境搭建的更多相关文章

  1. 操作系统内核Hack:(一)实验环境搭建

    操作系统内核Hack:(一)实验环境搭建 三四年前,心血来潮,入手<Orange's:一个操作系统的实现>学习操作系统内核,还配套买了王爽的<汇编语言(第二版)>和<80 ...

  2. Nginx配置多个基于域名的虚拟主机+实验环境搭建+测试

    标签:Linux 域名 Nginx 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://xpleaf.blog.51cto.com/9 ...

  3. 深度学习(TensorFlow)环境搭建:(三)Ubuntu16.04+CUDA8.0+cuDNN7+Anaconda4.4+Python3.6+TensorFlow1.3

    紧接着上一篇的文章<深度学习(TensorFlow)环境搭建:(二)Ubuntu16.04+1080Ti显卡驱动>,这篇文章,主要讲解如何安装CUDA+CUDNN,不过前提是我们是已经把N ...

  4. 深度学习(TensorFlow)环境搭建:(二)Ubuntu16.04+1080Ti显卡驱动

    前几天把刚拿到了2台GPU机器组装好了,也写了篇硬件配置清单的文章——<深度学习(TensorFlow)环境搭建:(一)硬件选购和主机组装>.这两台也在安装Ubuntu 16.04和108 ...

  5. mininet(一)实验环境搭建

    mininet(一)实验环境搭建 mininet(二)简单的路由实验 mininet(三)简单的NAT实验 最近学习(https://github.com/mininet/openflow-tutor ...

  6. Ubuntu下常用强化学习实验环境搭建(MuJoCo, OpenAI Gym, rllab, DeepMind Lab, TORCS, PySC2)

    http://lib.csdn.net/article/aimachinelearning/68113 原文地址:http://blog.csdn.net/jinzhuojun/article/det ...

  7. 【MySQL】MySQL无基础学习和入门之一:数据库基础概述和实验环境搭建

    数据库基础概述  大部分互联网公司都选择MySQL作为业务数据存储数据库,除了MySQL目前还有很多公司使用Oracle(甲骨文).SQLserver(微软).MongoDB等. 从使用成本来区分可以 ...

  8. ubuntu16.04+cuda9+cudnn7+tensorflow+pycharm环境搭建

    安装环境:ubuntu16.04+cuda9+cudnn7+tensorflow+pycharm 1)前期搭建过程主要是按照这篇博文,对于版本选择,安装步骤都讲得很详细,亲测有效! https://b ...

  9. TensorFlow 开发环境搭建--Pycharm

    今天动手开始搭建TensorFlow开发环境, 用PyCharm来跑MNIST中的例子.记录过程如下 下载安装 (1)首先安装AnaConda, AnaConda可以帮忙去管理安装包,帮忙创建虚拟环境 ...

随机推荐

  1. MongoDB系列五(地理空间索引与查询).

    一.经纬度表示方式 MongoDB 中对经纬度的存储有着自己的一套规范(主要是为了可以在该字段上建立地理空间索引).包括两种方式,分别是 Legacy Coordinate Pairs (这个词实在不 ...

  2. [js]关于call()和apply()的理解

    call 和 apply 都是为了改变某个函数运行时的 context 即上下文而存在的,换句话说,就是为了改变函数体内部 this 的指向. 因为 JavaScript 的函数存在「定义时上下文」和 ...

  3. ASP.NET CORE系列【五】webapi整理以及RESTful风格化

    介绍 什么是RESTful?  这里不多做赘述,详情请百度! 哈哈,本来还想巴拉巴拉介绍一些webapi, RESTful的, 还是算了,咱们直接上干货!(原因是懒!哈哈) 使用 以前使用过mvc的人 ...

  4. 1114innodb的统计信息对optimizer成本预估影响实例 CARDINALITY

    转自  https://www.cnblogs.com/olinux/p/5140615.html 转自  https://yq.aliyun.com/articles/174906?spm=5176 ...

  5. Python selenium 三种等待方式详解

    1. 强制等待第一种也是最简单粗暴的一种办法就是强制等待sleep(xx),强制让闪电侠等xx时间,不管凹凸曼能不能跟上速度,还是已经提前到了,都必须等xx时间.看代码: # -*- coding: ...

  6. WebGL之通过外部传入a_PontSize值改变点着色器vshader内置变量gl_PointSize的值

    最近分配到一个看起来非常简单的优化需求.通过地图上设置工具来改变地图上显示的点的大小和透明度.无非过程就是从控件面板获取到用户设置的值保存到数据库中.然后地图上画点的时候取出设置的值渲染出点即可.前端 ...

  7. laypage分页控件使用方法

    laypage是一款非常简单易用的分页控件,由于最近项目中使用到了,简单记录一下使用方法 1.引入laypage所需的js和css文件 <link href="js/laypage/1 ...

  8. [LeetCode] Maximum Sum of 3 Non-Overlapping Subarrays 三个非重叠子数组的最大和

    In a given array nums of positive integers, find three non-overlapping subarrays with maximum sum. E ...

  9. [LeetCode] The Maze III 迷宫之三

    There is a ball in a maze with empty spaces and walls. The ball can go through empty spaces by rolli ...

  10. Struts2--标签tag

    在Struts2框架中提供了一套标签库,可以与struts2无缝结合. 数据标签a.action.bean.date.debug.i18n.include.param.property.push.se ...