Docker 安装tensorflow

Posted 塔上的樹

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Docker 安装tensorflow相关的知识,希望对你有一定的参考价值。

安装DOCKER

1. https://docs.docker.com/engine/installation/linux/docker-ce/ubuntu/

nstall from a package

If you cannot use Docker’s repository to install Docker CE, you can download the .deb file for your release and install it manually. You will need to download a new file each time you want to upgrade Docker CE.

  1. Go to https://download.docker.com/linux/ubuntu/dists/, choose your Ubuntu version, browse to pool/stable/ and choose amd64,armhf, or s390x. Download the .deb file for the Docker version you want to install.

    Note: To install an edge package, change the word stable in the URL to edgeLearn about stable and edge channels.

  2. Install Docker CE, changing the path below to the path where you downloaded the Docker package.

    $ sudo dpkg -i /path/to/package.deb
    

    The Docker daemon starts automatically.

  3. Verify that Docker CE is installed correctly by running the hello-world image.

    $ sudo docker run hello-world
    

    This command downloads a test image and runs it in a container. When the container runs, it prints an informational message and exits.

Docker CE is installed and running. You need to use sudo to run Docker commands. Continue to Post-installation steps for Linux to allow non-privileged users to run Docker commands and for other optional configuration steps.

2. https://github.com/widuu/chinese_docker/blob/master/installation/ubuntu.md#Ubuntu%E5%AE%89%E8%A3%85Docker

##Ubuntu Docker可选配置

这部分主要介绍了 Docker 的可选配置项,使用这些配置能够让 Docker 在 Ubuntu 上更好的工作。

  • 创建 Docker 用户组
  • 调整内存和交换空间(swap accounting)
  • 启用防火墙的端口转发(UFW)
  • 为 Docker 配置DNS服务

###创建 Docker 用户组

docker 进程通过监听一个 Unix Socket 来替代 TCP 端口。在默认情况下,docker 的 Unix Socket属于root用户,当然其他用户可以使用sudo方式来访问。因为这个原因, docker 进程就一直是root用户运行的。

为了在使用 docker 命令的时候前边不再加sudo,我们需要创建一个叫 docker 的用户组,并且为用户组添加用户。然后在 docker 进程启动的时候,我们的 docker 群组有了 Unix Socket 的所有权,可以对 Socket 文件进行读写。

注意:docker 群组就相当于root用户。有关系统安全影响的细节,请查看 Docker 进程表面攻击细节

创建 docker 用户组并添加用户

  1. 使用具有sudo权限的用户来登录你的Ubuntu。

    在这过程中,我们假设你已经登录了Ubuntu。

  2. 创建 docker 用户组并添加用户。

     $ sudo usermod -aG docker ubuntu
    
  3. 注销登录并重新登录

    这里要确保你运行用户的权限。

  4. 验证 docker 用户不使用 sudo 命令开执行 Docker

     $ docker run hello-world
    

###调整内存和交换空间(swap accounting)

当我们使用 Docker 运行一个镜像的时候,我们可能会看到如下的信息提示:

WARNING: Your kernel does not support cgroup swap limit. WARNING: Your
kernel does not support swap limit capabilities. Limitation discarded.、

为了防止以上错误信息提示的出现,我们需要在系统中启用内存和交换空间。我们需要修改系统的 GUN GRUB (GNU GRand Unified Bootloader) 来启用内存和交换空间。开启方法如下:

  1. 使用具有sudo权限的用户来登录你的Ubuntu。

  2. 编辑 /etc/default/grub 文件

  3. 设置 GRUB_CMDLINE_LINUX 的值如下:

     GRUB_CMDLINE_LINUX="cgroup_enable=memory swapaccount=1"
    
  4. 保存和关闭文件

  5. 更新 GRUB

     $ sudo update-grub
    
  6. 重启你的系统。

3.GPU需+额外:https://medium.com/@gooshan/for-those-who-had-trouble-in-past-months-of-getting-google-s-tensorflow-to-work-inside-a-docker-9ec7a4df945b

https://github.com/NVIDIA/nvidia-docker

 

3. Install Docker and nvidia-docker

 

# Install docker
curl -sSL https://get.docker.com/ | sh

 

The docker container needs access to the GPU devices. For this purpose use `nvidia-docker` which is a wrapper around the standard `docker` command.

 

# Install nvidia-docker and nvidia-docker-plugin

 

wget -P /tmp https://github.com/NVIDIA/nvidia-docker/releases/download/v1.0.0-rc.3/nvidia-docker_1.0.0.rc.3-1_amd64.deb

 

sudo dpkg -i /tmp/nvidia-docker*.deb && rm /tmp/nvidia-docker*.deb

 

# Test nvidia-smi.
nvidia-docker run --rm nvidia/cuda nvidia-smi

 

You might need to use `nvidia-docker` with sudo!

 

安装Tensorflow

1. 

 

以上是关于Docker 安装tensorflow的主要内容,如果未能解决你的问题,请参考以下文章

TensorFlow | win10下使用docker安装tensorflow

tensorflow 研究 docker的安装

利用docker在window7下安装TensorFlow

tensorflow 安装

使用tensorflow-serving部署tensorflow模型

在Windows上玩TensorFlow——安装Docker