docker安装 Tensorflow遇到问题i/o timeout.

docker: Error response from daemon: Get https://gcr.io/v1/_ping: dial tcp 64.233.188.82:443: i/o timeout.

Tensorflow 是Google的一个开源机器学习框架,中国大陆的用户在使用的时候往往需要爬过GFW墙,借助VPN。

依照Tensorflow的官方文档 在docker中安装Tensorflow的时候,国内的用户通常会报错,有的借助VPN可以解决,而有的不行。

(1)在docker成功安装完后,在终端命令行输入:

sudo docker run -it -p 8888:8888 gcr.io/tensorflow/tensorflow

(2)报错如下:

Unable to find image 'gcr.io/tensorflow/tensorflow:latest' locally
docker: Error response from daemon: Get https://gcr.io/v1/_ping: dial tcp 64.233.188.82:443: i/o timeout.
See 'docker run --help'.

主要原因还是因为GFW,在Github上有人提出过引起这个问题的原因,tensorflow/issues/1273,点击此链接

(3)关于这个,问题,我觉得最简单的办法是更换镜像的pull镜像库。也就是说,不是从Tensorflow给出的库(Google Cloud Platform)进行pull,而是用docker的库(docker hub)。

docker hub 中的tensorflow镜像介绍:

因此,在终端输入如下命令:

sudo docker run -it -p 8888:8888 tensorflow/tensorflow

只要你的docker是安装成功,能够pull镜像,那么基本会成功安装Tensorflow。我的运行输出如下:

Unable to find image 'tensorflow/tensorflow:latest' locally
latest: Pulling from tensorflow/tensorflow
862a3e9af0ae: Pull complete
6498e51874bf: Pull complete
159ebdd1959b: Pull complete
0fdbedd3771a: Pull complete
7a1f7116d1e3: Pull complete
f22ce26e7804: Pull complete
80e54362977d: Pull complete
6bf17916f3f1: Pull complete
cbb2cc9179cb: Pull complete
4f976cd18afd: Pull complete
31ba02bae790: Pull complete
e26c94fb0976: Pull complete
Digest: sha256:feedf027da0d525300dc73e433b4ade2147c6a408756cdd9846fd37b40929f8a
Status: Downloaded newer image for tensorflow/tensorflow:latest
[I 03:19:59.901 NotebookApp] Writing notebook server cookie secret to /root/.local/share/jupyter/runtime/notebook_cookie_secret
[W 03:19:59.981 NotebookApp] WARNING: The notebook server is listening on all IP addresses and not using encryption. This is not recommended.
[I 03:20:00.015 NotebookApp] Serving notebooks from local directory: /notebooks
[I 03:20:00.015 NotebookApp] 0 active kernels
[I 03:20:00.015 NotebookApp] The Jupyter Notebook is running at: http://[all ip addresses on your system]:8888/?token=93a4eec743c0601c77e6b3f88386da5efab335f49d6a476e
[I 03:20:00.015 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
[C 03:20:00.016 NotebookApp] Copy/paste this URL into your browser when you connect for the first time,
to login with a token:
http://localhost:8888/?token=93a4eec743c0601c77e6b3f88386da5efab335f49d6a476e
[I 03:25:55.708 NotebookApp] 302 GET /?token=93a4eec743c0601c77e6b3f88386da5efab335f49d6a476e (172.17.0.1) 0.45ms

因为这个镜像比较大,所以会需要一定的时间pull,耐心等待就好。

(4)打开一个新的命令终端进行测试是否安装成功:

首先,查看docker中有哪些容器/镜像存在

sudo docker ps -a

得到如下格式的输出:

注意到,第一个容器即是我们安装的tensorflow的镜像在运行的容器,其ID是53f212117a94

接着,进入容器:
替换我的这个53f212117a94 为你的,其他命令不变

sudo docker exec -i -t 53f212117a94 /bin/bash
  • 1

得到输入如下:

mingchen@mingchen-HP:~$ sudo docker exec -i -t 53f212117a94 /bin/bash
root@53f212117a94:/notebooks#

看看python版本:

root@53f212117a94:/notebooks# python
Python 2.7.6 (default, Oct 26 2016, 20:30:19)
[GCC 4.8.4] on linux2
Type "help", "copyright", "credits" or "license" for more information.

输出Hello, TensorFlow!:

>>> 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

测试结果显示,已成功在docker中安装Tensorflow。

docker安装tensorflow环境遇到的问题与解决方案的更多相关文章

  1. Ubuntu 基于Docker的TensorFlow 环境搭建

    基于Docker的TensorFlow 环境搭建 基于(ubuntu 16.04LTS/ubuntu 14.04LTS) 一.docker环境安装 1)更新.安装依赖包 sudo apt-get up ...

  2. Docker安装 - CentOS7环境

    Docker安装 - CentOS7环境 安装Docker 我是虚拟机装的Centos7,linux 3.10 内核,docker官方说至少3.8以上,建议3.10以上(ubuntu下要linux内核 ...

  3. Ubuntu中的Docker搭建Tensorflow环境

    一.docker环境安装 1)更新.安装依赖包 sudo apt-get update sudo apt-get install apt-transport-https ca-certificates ...

  4. windows下使用docker安装tensorflow

    一.安装Docker 1.首先先按照docker,从https://get.daocloud.io/toolbox/  下载exe文件就好 双击安装会多出来三个东西: Oracle VM Virtua ...

  5. docker安装+测试环境的搭建---

    漏洞演练环境docker地址:http://vulhub.org/#/environments/ 环境:kali-linux-2017.2-amd64.iso 一.docker安装 1.先更新一波源: ...

  6. Docker 安装tensorflow

    安装DOCKER 1. https://docs.docker.com/engine/installation/linux/docker-ce/ubuntu/ nstall from a packag ...

  7. docker安装与环境部署

    使用docker搭建环境 摘要 install docker start docker install docker-compose 部署upload-labs/sqli-labs 部署dvwa 部署 ...

  8. docker安装Tensorflow并使用jupyter notebook

    目前网上提供的大多数的方法都是如下: docker pull tensorflow/tensorflow docker run -it -p : tensorflow/tensorflow 但是按照步 ...

  9. Docker安装开发环境

    目录 Docker Docker 安装 Mysql Docker 安装Redis Docker 安装Zookeeper Docker Docker 安装 Mysql Docker 查看可用Mysql镜 ...

随机推荐

  1. CSTC 选课

    选课 [问题描述] 在大学里每个学生,为了达到一定的学分,必须从很多课程里选择一些课程来学习,在课程里有些课程必须在某些课程之前学习,如高等数学总是在其它课程之前学习.现在有N门功课,每门课有个学分, ...

  2. SQLServer 多点及时备份技巧

    为了保证数据库的安全性,我们都会规划数据库的容灾策略,包含本地备份.异地备份.raid.或者使用高可用性(如 日志传送.镜像.复制等)进行异地容灾.因为 SqlServer 数据库的备份仅仅有一个备份 ...

  3. 《Java程序设计》第16周周五:数据库连接 与 随机数的使用

    第一部分:实验项目 项目二:数据库初步. 目的:了解Java连接数据库的步骤与方法.以及MySQL数据库的安装与使用. 目标: (1)在机房安装上MySQL数据库. 安装成功 MySQL数据库 (2) ...

  4. 0x61 最短路

    终于会dij了原来我以前写的也是堆优化spfa-_-! poj3662DP 通过spfa来放缩(可怜我去年NOIP的day1t3啊) #include<cstdio> #include&l ...

  5. Reset and Clear Recent Items and Frequent Places in Windows 10

    https://www.tenforums.com/tutorials/3476-reset-clear-recent-items-frequent-places-windows-10-a.html ...

  6. [Oracle] Oracle终极解锁

    一些ORACLE中的进程被杀掉后,状态被置为"killed",但是锁定的资源很长时间不释放,有时实在没办法,只好重启数据库.现在提供一种方法解决这种问题,那就是在ORACLE中杀不 ...

  7. php的mcrypt

    安装和使用php的mcrypt扩展 程序员们在编写代码程序时,除了要保证代码的高性能之外,还有一点是非常重要的,那就是程序的安全性保障.PHP除了自带的几种加密函数外,还有功能更全面的PHP加密扩展库 ...

  8. javascript设计模式-掺元类

    有一种重用代码的方法不需要用到严格的继承.如果想把一个函数用到多个类中,可以通过扩充的方式让这些类共享该函数.其实际做法大大体为:先创建一个包含各种通用方法的类,然后再用它扩充其他的类.这种方式就叫做 ...

  9. 关于c-string类

    特别鸣谢:由张老师整理(原出处未知 一.C++ 字符串 C++ 提供了以下两种类型的字符串表示形式: C 风格字符串 C++ 引入的 string 类类型 1.C 风格字符串 C 风格的字符串起源于 ...

  10. 移动端的click事件延迟触发的原理是什么?如何解决这个问题?

    移动端的click事件延迟触发的原理是什么?如何解决这个问题? 原理 :移动端屏幕双击会缩放页面 300ms延迟 会出现点透现象 在列表页面上创建一个弹出层,弹出层有个关闭的按钮,你点了这个按钮关闭弹 ...