每次换了个地方就要重新配置自己的开发环境那是特别蛋疼的,尤其是要弄到服务器跑的时候,不小心把环境弄崩了是非常惨的。
  
  下载tensorflow-gpu版本的源
  
  docker pull daocloud.io/daocloud/tensorflow:0.11.0-gpu
  
  1
  
  编辑方便的脚本文件启动docker
  
  先查下你有几个GPU设备
  
  [root@XXX ~]# ls -la /dev | grep nvidia
  
  crw-rw-rw-. 1 root root 195, 0 Sep 16 13:49 nvidia0
  
  crw-rw-rw-. 1 root root 195, 255 Sep 16 13:49 nvidiactl
  
  crw-rw-rw-. 1 root root 247, 0 Sep 16 13:54 nvidia-uvm
  
  1
  
  2
  
  3
  
  4
  
  然后再查你的docker镜像
  
  y@y:~$ sudo docker images
  
  [sudo] password for y:
  
  REPOSITORY TAG IMAGE ID CREATED SIZE
  
  daocloud.io/daocloud/tensorflow 0.11.0-gpu dd645f420f1d 8 weeks ago 2.713 GB
  
  daocloud.io/daocloud/tensorflow 0.10.0-devel-gpu fa886c09638d 3 months ago 5.014 GB
  
  hello-world
  
  1
  
  2
  
  3
  
  4
  
  5
  
  6
  
  然后就可以启动咯
  
  sudo docker run -ti -v /home/:/mnt/home --privileged=true --device /dev/nvidia0:/dev/nvidia0 --device /dev/nvidiactl:/dev/nvidiactl --device /dev/nvidia-uvm:/dev/nvidia-uvm daocloud.io/daocloud/tensorflow:0.11.0-gpu /bin/bash
  
  1
  
  上面这句有点长把它写到docker.sh文件,然后
  
  sh docker.sh
  
  1
  
  完成。 上面的意思是把本地的/home映射到docker的/mnt目录
  
  以及各种显卡设备也映射进去
  
  进去之后
  
  别急着用tensorflow,可能会报错,因为我发现LD_LIBLABRARY_PATH环境变量设置的不对。但是又没有vim。于是先更新软件源。把软件源文件放到本机的/home,再去docker的/mnt/home里面复制到
  
  /etc/apt/sources.list
  
  1
  
  deb http://mirrors.aliyun.com/ubuntu/ trusty main multiverse restricted universe
  
  deb http://mirrors.aliyun.com/ubuntu/ trusty-backports main multiverse restricted universe
  
  deb http://mirrors.aliyun.com/ubuntu/ trusty-proposed main multiverse restricted universe
  
  deb http://mirrors.aliyun.com/ubuntu/ trusty-security main multiverse restricted universe
  
  deb http://mirrors.aliyun.com/ubuntu/ trusty-updates main multiverse restricted universe
  
  deb-src http://mirrors.aliyun.com/ubuntu/ trusty main multiverse restricted universe
  
  deb-src http://www.jyz521.com/ /ubuntu/ trusty-backports main multiverse restricted universe
  
  deb-src http://mirrors.aliyun.com/ubuntu/ trusty-proposed main multiverse restricted universe
  
  deb-src http://www.chushiyl.cn /ubuntu/ trusty-security main multiverse restricted universe
  
  deb-src http://www.huachengjpt.com /ubuntu/ trusty-updates main multiverse restricted universe
  
  然后
  
  apt-get update
  
  apt-get install 你要安装的东西
  
  1
  
  2
  
  安装常用软件
  
  在~/.bashrc里面最后加上
  
  export LD_LIBLABRARY_PATH = /usr/local/cuda-8.0/lib64:$LD_LIBLABRARY_PATH
  
  1
  
  2
  
  退出终端
  
  主机保存镜像为新版本
  
  sudo docker ps -l
  
  y@y:~$ sudo docker ps -l
  
  CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
  
  a1f2ac36a2c9 daocloud.io/daocloud/tensorflow:0.11.0-gpu "/bin/bash" 10 minutes ago Up 10 minutes 6006/tcp, 8888/tcp
  
  1
  
  2
  
  3
  
  4
  
  把a1f2ac36a2c9这个名字记住
  
  然后
  
  docker commit a1f2ac36a2c9 新名字
  
  1
  
  OK了
  
  把镜像存到移动硬盘里
  
  sudo docker save -o "要存的地址" daocloud.io/daocloud/tensorflow:0.11.0-gpu
  
  1
  
  加载本地的
  
  sudo docker load --input "本地地址"
  
  1
  
  删除镜像
  
  docker rmi "镜像IDa1f2ac36a2c9 "
  
  1
  
  使用tensorflow
  
  在docker里面发现import tensorflow报错
  
  I tensorflow/stream_executor/dso_loader.cc:111] successfully opened CUDA library libcublas.so locally
  
  I tensorflow/stream_executor/dso_loader.cc:111] successfully opened CUDA library libcudnn.so locally
  
  I tensorflow/stream_executor/dso_loader.cc:111] successfully opened CUDA library libcufft.so locally
  
  I tensorflow/stream_executor/dso_loader.cc:105] Couldn't open CUDA library libcuda.so.1. LD_LIBRARY_PATH: /usr/local/cuda-8.0/lib64:/usr/local/nvidia/lib:/usr/local/nvidia/lib64:
  
  I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:160] hostname: ad8b0d82bec1
  
  I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:185] libcuda reported version is: Not found: was unable to find libcuda.so DSO loaded into this program
  
  I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:356] driver version file contents: """NVRM version: NVIDIA UNIX x86_64 Kernel Module 367.44 Wed Aug 17 22:24:07 PDT 2016
  
  1
  
  2
  
  3
  
  4
  
  5
  
  6
  
  7
  
  估计是cuda.so这个没有集成进来,干脆直接把本机的放进docker来好了。
  
  -v /usr/lib/x86_64-linux-gnu/:/usr/lib/x86_64-linux-gnu/
  
  1
  
  这一句重新加入docker run里面去。重启docker OK
  
  root@282f3d4a2193:/notebooks# python\
  
  >
  
  Python 2.7.6 (default, Jun 22 2015, 17:58:13)
  
  [GCC 4.8.2] on linux2
  
  Type "help", "copyright", "credits" or "license" for more information.
  
  >>> import tensorflow
  
  I tensorflow/stream_executor/dso_loader.cc:111] successfully opened CUDA library libcublas.so locally
  
  I tensorflow/stream_executor/dso_loader.cc:111] successfully opened CUDA library libcudnn.so locally
  
  I tensorflow/stream_executor/dso_loader.cc:111] successfully opened CUDA library libcufft.so locally
  
  I tensorflow/stream_executor/dso_loader.cc:111] successfully opened CUDA library libcuda.so.1 locally
  
  I tensorflow/stream_executor/dso_loader.cc:111] successfully opened CUDA library libcurand.so locally
  
  >>>
  
  测试一下效果
  
  ...
  
  >>> import tensorflow as tf
  
  >>> hello = tf.constant('Hello, TensorFlow!')
  
  >>> sess = tf.Session()
  
  >>> print(sess.run(hello))
  
  Hello, TensorFlow!
  
  >>> a = tf.constant(10)
  
  >>> b = tf.constant(32)
  
  >>> print(sess.run(a + b))
  
  42

下载tensorflow-gpu版本的源的更多相关文章

  1. 【转】Ubuntu 16.04安装配置TensorFlow GPU版本

    之前摸爬滚打总是各种坑,今天参考这篇文章终于解决了,甚是鸡冻\(≧▽≦)/,电脑不知道怎么的,安装不了16.04,就安装15.10再升级到16.04 requirements: Ubuntu 16.0 ...

  2. Windows7 64bits下安装TensorFlow GPU版本(图文详解)

    不多说,直接上干货! Installing TensorFlow on Windows的官网 https://www.tensorflow.org/install/install_windows 首先 ...

  3. win10系统下安装TensorFlow GPU版本

    首先要说,官网上的指南是最好的指南. https://www.tensorflow.org/install/install_windows 需要FQ看. 想要安装gpu版本的TensorFlow.我们 ...

  4. 通过Anaconda在Ubuntu16.04上安装 TensorFlow(GPU版本)

    一. 安装环境 Ubuntu16.04.3 LST GPU: GeForce GTX1070 Python: 3.5 CUDA Toolkit 8.0 GA1 (Sept 2016) cuDNN v6 ...

  5. Win10上安装Keras 和 TensorFlow(GPU版本)

    一. 安装环境 Windows 10 64bit  家庭版 GPU: GeForce GTX1070 Python: 3.5 CUDA: CUDA Toolkit 8.0 GA1 (Sept 2016 ...

  6. tensorflow 一些好的blog链接和tensorflow gpu版本安装

    pading :SAME,VALID 区别  http://blog.csdn.net/mao_xiao_feng/article/details/53444333 tensorflow实现的各种算法 ...

  7. 说说Windows7 64bits下安装TensorFlow GPU版本会遇到的一些坑

    不多说,直接上干货! 再写博文,回顾在Windows7上安装TensorFlow-GPU的一路坑 Windows7上安装TensorFlow的GPU版本后记 欢迎大家,加入我的微信公众号:大数据躺过的 ...

  8. TensorFlow GPU版本的安装与调试

    笔者采用python3.6.7+TensorFlow1.12.0+CUDA10.0+CUDNN7.3.1构建环境 PC端配置为GTX 1050+Intel i7 7700HQ 4核心8线程@2.8GH ...

  9. tensorflow GPU版本安装及配置

    经检测速度大幅度上升,不枉费我折腾了这么久,最坑的就是网上教程.书都没有写将cuda的bin加入全局变量,还是根据报错信息推出来的. 1.cuda9.0下载安装 https://developer.n ...

  10. Python3.7+Pycharm+cuda10.0+tensorflow GPU版本 安装

    处理器:I5-7500 显卡   :GTX1050Ti 系统   :Win10 1. 首先搭建Python环境. 官网https://www.python.org/downloads/下载Python ...

随机推荐

  1. SS、SP、BP寄存器

    SS, SP, BP 三个寄存器 SS:存放栈的段地址: SP:堆栈寄存器SP(stack pointer)存放栈的偏移地址; BP: 基数指针寄存器BP(base pointer)是一个寄存器,它的 ...

  2. Android Layout属性笔记

    android:id 为控件指定相应的ID android:text 指定控件当中显示的文字,需要注意的是,这里尽量使用strings.xml文件当中的字符串 android:gravity 指定Vi ...

  3. 20155210 Exp2 后门原理与实践

    20155210 Exp2 后门原理与实践 1.Windows获得Linux Shell 在windows下,打开CMD,使用ipconfig指令查看本机IP 如图: 然后使用ncat.exe程序,n ...

  4. 蒙特卡罗方法 python 实现

    蒙特卡罗(Monte Carlo)方法的精髓:用统计结果去计算频率,从而得到真实值的近似值. 一.求圆周率的近似值,采用 投点法 import numpy as np import matplotli ...

  5. windows系统中Dotnet core runtime 安装后,无法启动次程序,因为计算机中丢失api-ms-win-crt-runtime-l1-1-0.dll的解决方法

    因为dotnet core runtime依赖vc++2015,如果系统未安装vc++2015则会报上面的错误 解决方案:先下载安装vc++2015再安装dotnet core runtime, vc ...

  6. TMS320VC5509驱动LCD1602之奇怪问题和时序图

    1. 最近调试自己板子上LCD1602的时候,看下测试的时序图,因为下面的时序图导致LCD1602无法显示,下面的时序图是有问题的,E的上升沿和下降沿的时候,RW需要低电平 对比下淘宝上买的可以显示的 ...

  7. 设计模式 笔记 中介者模式 Mediator

    //---------------------------15/04/27---------------------------- //Mediator 中介者模式----对象行为型模式 /* 1:意 ...

  8. effective c++ 笔记 (41-44)

    //---------------------------15/04/25---------------------------- //#41   了解隐式接口和编译期多态 { //  1:面向对象编 ...

  9. Android中级教程之----Log图文详解(Log.v,Log.d,Log.i,Log.w,Log.e)

    在Android群里,经常会有人问我,Android Log是怎么用的,今天我就把从网上以及SDK里东拼西凑过来,让大家先一睹为快,希望对大家入门Android Log有一定的帮助. android. ...

  10. Microsoft Dynamics CRM 增删改子表汇总子表的某个字段到主表的某个字段(通用插件)

    背景 经常有某个汇总子表的数量到主表的总数量,或者汇总子表的总价到主表的总价这种需求. 传统的做法: 1.就是为每个子表实体单独写成一个插件,但是这样不好复用. 2.主表的汇总字段是汇总货币类型,但是 ...