基于docker安装tensorflow的完整步骤

前言

google又一次成为大家膜拜的大神了。google大神在引导这机器学习的方向。 同时docker 也是一个非常好的工具,大大的方便了开发环境的构建,之前需要配置安装。 最近在自学机器学习,大热的Tensorflow自然不能错过,所以首先解决安装问题,为了不影响本地环境,所以本文基于Docker来安装Tensorflow,我的环境是Ubuntu16.04。

安装Docker

Docker分为CE和EE,这里我们选择CE,也就是常规的社区版,首先移除本机上可能存在的旧版本。

移除旧版本

$ sudo apt-get remove docker \
  docker-engine \
  docker.io

安装可选内核模块

从Ubuntu14.04以后,某些裁剪后的系统会把一部分内核模块移到可选内核包中,常以linux-image-extra-*开头,而Docker推荐的存储层驱动AUFS包含在可选内核模块包中,所以还是建议安装可选内核模块包的。可以使用以下命令安装:

$ sudo apt-get update
$ sudo apt-get install \
 linux-image-extra-$(uname -r) \
 linux-image-extra-virtual

证书及密钥准备

在正式安装之前,我们需要添加证书以及HTTPS传输的软件包以保证软件下载过程中不被篡改:

$ sudo apt-get update
$ sudo apt-get install \
 apt-transport-https \
 ca-certificates \
 curl \
 software-properties-common

添加软件源的GPG密钥:

$ curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
# 官方源
# $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

最后添加Docker软件源:

$ sudo add-apt-repository \
 "deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu \
 $(lsb_release -cs) \
 stable"
# 官方源
# $ sudo add-apt-repository \
# "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
# $(lsb_release -cs) \
# stable"

安装Docker

$ sudo apt-get update
$ sudo apt-get install docker-ce

建立docker用户组

docker通常会使用Unix socket和Docker引擎通讯,通常只有root和docker用户组的用户才可以访问该socket,不然你就要一直sudo,所以最好把你当前需要使用docker的用户添加到docker用户组中。

建立docker用户组

$ sudo groupadd docker

将当前用户加入用户组

$ sudo usermod -aG docker $USER

最后重新登录下系统

测试Docker

确保服务启动

$ sudo service docker start

使用HelloWorld测试

测试安装是否成功

docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
ca4f61b1923c: Pull complete
Digest: sha256:083de497cff944f969d8499ab94f07134c50bcf5e6b9559b27182d3fa80ce3f7
Status: Downloaded newer image for hello-world:latest

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
 (amd64)
 3. The Docker daemon created a new container from that image which runs the
 executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
 to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
 https://cloud.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/engine/userguide/

若能显示,证明安装成功。

安装Tensorflow

有了Docker,安装Tensorflow基本没有什么难度。

下载镜像

docker pull tensorflow/tensorflow

下载完毕后显示:

Status: Downloaded newer image for tensorflow/tensorflow:latest

创建Tensorflow容器

docker run --name my-tensorflow -it -p 8888:8888 -v ~/tensorflow:/test/data tensorflow/tensorflow
  • --name:创建的容器名,即my-tensorflow
  • -it:保留命令行运行
  • p 8888:8888:将本地的8888端口和http://localhost:8888/映射
  • -v ~/tensorflow:/test/data:将本地的~/tensorflow挂载到容器内的/test/data下
  • tensorflow/tensorflow :默认是tensorflow/tensorflow:latest,指定使用的镜像

输入以上命令后,默认容器就被启动了,命令行显示:

[I 15:08:31.949 NotebookApp] Writing notebook server cookie secret to /root/.local/share/jupyter/runtime/notebook_cookie_secret
[W 15:08:31.970 NotebookApp] WARNING: The notebook server is listening on all IP addresses and not using encryption. This is not recommended.
[I 15:08:31.975 NotebookApp] Serving notebooks from local directory: /notebooks
[I 15:08:31.975 NotebookApp] 0 active kernels
[I 15:08:31.975 NotebookApp] The Jupyter Notebook is running at:
[I 15:08:31.975 NotebookApp] http://[all ip addresses on your system]:8888/?token=649d7cab1734e01db75b6c2b476ea87aa0b24dde56662a27
[I 15:08:31.975 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
[C 15:08:31.975 NotebookApp] 

 Copy/paste this URL into your browser when you connect for the first time,
 to login with a token:
  ;
[I 15:09:08.581 NotebookApp] 302 GET /?token=649d7cab1734e01db75b6c2b476ea87aa0b24dde56662a27 (172.17.0.1) 0.42ms

拷贝带token的URL在浏览器打开

http://[all ip addresses on your system]:8888/?token=649d7cab1734e01db75b6c2b476ea87aa0b24dde56662a27

显示如下:

显示Jupyter Notebook,Jupyter Notebook(此前被称为 IPython notebook)是一个交互式笔记本。示例中已经显示了Tensorflow的入门教程,点开一个可以看见

如上面这个例子,是使用tensorflow来使两个array相加,我们点击run,就可以看到运行的结果了。

关闭容器

docker stop my-tensortflow

再次打开

docker start my-tensortflow

如果不喜欢用Jupyter Notebook,我们也可以创建基于命令行的容器

基于命令行的容器

docker run -it --name bash_tensorflow tensorflow/tensorflow /bin/bash

这样我们就创建了名为bash_tensorflow的容器

还是用start命令启动容器:

docker start bash_tensorflow

再连接上容器:

docker attach bash_tensorflow

可以看到我们用终端连接上了容器,和操作Linux一样了。

这个镜像默认没有装vim,所以自己又下载了vim来写代码。

至此,安装过程结束。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对我们的支持。

您可能感兴趣的文章:

  • TensorFlow在MAC环境下的安装及环境搭建
  • 详解Python使用tensorflow入门指南
(0)

相关推荐

  • TensorFlow在MAC环境下的安装及环境搭建

    给大家分享一下TensorFlow在MAC系统中的安装步骤以及环境搭建的操作流程. TensorFlow 底层的图模型结构清晰,容易改造:支持分布式训练:可视化效果好.如果做长期项目,接触较大数据集的话,TensorFlow很适用,而且谷歌也在不断优化完备它,对于使用深度学习朋友,TensorFlow是一个很好的工具. 在学习了一段时间台大李宏毅关于deep learning的课程,以及一些其他机器学习的书之后,终于打算开始动手进行一些实践了. 感觉保完研之后散养状态下,学习效率太低了,于是便想

  • 详解Python使用tensorflow入门指南

    TensorFlow是Google公司2015年11月开源的第二代深度学习框架,是第一代框架DistBelief的改进版本. TensorFlow支持python和c/c++语言, 可以在cpu或gpu上进行运算, 支持使用virtualenv或docker打包发布. 定义变量 为了使用tensorflow,首先我们需要导入它 import tensorflow as tf 对于符号变量,我们新建一个 x = tf.placeholder(tf.float32, [None, 784]) 这里x

  • 基于docker安装tensorflow的完整步骤

    前言 google又一次成为大家膜拜的大神了.google大神在引导这机器学习的方向. 同时docker 也是一个非常好的工具,大大的方便了开发环境的构建,之前需要配置安装. 最近在自学机器学习,大热的Tensorflow自然不能错过,所以首先解决安装问题,为了不影响本地环境,所以本文基于Docker来安装Tensorflow,我的环境是Ubuntu16.04. 安装Docker Docker分为CE和EE,这里我们选择CE,也就是常规的社区版,首先移除本机上可能存在的旧版本. 移除旧版本 $

  • 在云服务器上基于docker安装jenkins的实现步骤

    目录 基于docker安装jenkins 设置jenkins的反向代理 jenkins是老牌的CI/CD工具.下面记录一下在云服务器上的安装过程. 基于docker安装jenkins 下面记录了如何在云服务器上安装jenkins. 新建一个jenkins_docker文件夹,在文件夹里新建一个data文件夹.并给data文件夹读写权限. chmod -R a+w data/ 新建一个docker-compose.yml文件.添加下面的内容: version: "3.1" service

  • docker部署confluence的完整步骤

    Confluence 是收费的,但是可以破解使用(提倡购买,支持正版) 本文使用的镜像是基于他人(镜像&破解)打包的,本文的镜像是直接将破解文件置入容器了,省去了自己去捣鼓破解的 jar 包文件的过程,容器部署启动后即可访问. 整个过程请按照以下步骤进行: 1. 数据库创建 先创建文件 /opt/soft/mysql8-confluence/conf.d/custom.cnf,内容为: [mysqld] default-authentication-plugin=mysql_native_pas

  • win10 + anaconda3 + python3.6 安装tensorflow + keras的步骤详解

    初入深度学习,就遇到了困难,一直安装不了tensorflow和keras库!!!真是让人着急!!!在经过无数次尝试,看了无数篇博客之后,终于安装上了.下面是具体的安装步骤. 首先,创建一个新的环境,这个环境适合python3.5使用: conda create -n py35 python=3.5 anaconda 如果在创建过程中出现如下错误 RemoveError: 'setuptools' is a dependency of conda and cannot be removed fro

  • 树莓派4B安装Tensorflow的方法步骤

    1.写作背景 Tensorflow官方在2018年宣布,正式发布支持树莓派版本的Tensorflow,编者开始直接用: pip install tensorflow 进行安装,在安装成功后使用import进行验证时: import tensorflow as tf 出现了如下所示报错: E tensorflow/core/platform/hadoop/hadoop_file_system.cc:132] HadoopFileSystem load error: libhdfs.so: cann

  • Docker安装FastDFS的方法步骤

    拉取镜像 docker pull season/fastdfs:1.2 启动Tracker docker run -ti -d --name trakcer -v /opt/fastdfs/tracker_data:/fastdfs/tracker/data --net=host season/fastdfs:1.2 tracker 启动Storage 注意替换{ipaddress} docker run -ti -d --name storage -v /opt/fastdfs/storage

  • docker安装RocketMQ的实现步骤

    目录 一.检索镜像 二.创建Broker Server 三.创建broker 四.创建rocketmq console 五.测试 六.java样例 七.其他 参考: 一.检索镜像 docker search rocketmq 检索具体版本 curl https://registry.hub.docker.com/v1/repositories/foxiswho/rocketmq/tags | tr -d '[\[\]" ]' | tr '}' '\n' | awk -F: -v image='f

  • 基于docker安装zabbix的详细教程

    目录 基于docker安装zabbix 1.zabbix配置 2.存储配置 格式化磁盘 创建pv 创建vg 创建lv 创建文件系统 创建挂载目录 挂载分区 写入启动项 3.安装docker 4.修改docker存储路径 5.创建专用于 Zabbix 组件容器的网络: 6.创建mysql库 [废弃]6.docker安装mysql 拉取mysql镜像 创建mysql容器 添加防火墙端口 7.安装zabbix-java-gateway 8.安装zabbix-server 安装zabbix-server

  • Docker安装mysql超详细步骤记录

    查看需要安装的镜像版本 dockerHub官网地址 1.搜索mysql 2.点击标签 3.点击Tags,查看想要的版本号 在安装好docker的linux中执行命令 拉取mysql最新版本 docker pull mysql 拉取mysql指定版本 docker pull mysql:5.7 拉取结束后,查看本地是否存在 docker images 运行mysql docker run -d -p 3306:3306 --name mysql -v /mysqldata/mysql/log:/v

  • 基于docker 部署canvas-lms的详细步骤

    准备: 一台8G内存的服务器.安装好docker, pull一个ubuntu镜像下来, 可以是最新版也可以是官方支持的14/ 16 更新时间: 2018-04-04 Step 1: 启动docker然后加载ubuntu镜像.命令如下: sudo docker run -it ubuntu # -it 是链接输入输出, 后面有一个command参数, 默认为/bin/bash Step 2: 安装vim, sudo (ubuntu镜像可能会非常精简, 没有sudo, 没有vim等文本编辑器) ap

随机推荐