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.
-
Go to https://download.docker.com/linux/ubuntu/dists/, choose your Ubuntu version, browse to
pool/stable/
and chooseamd64
,armhf
, ors390x
. 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 toedge
. Learn about stable and edge channels. -
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.
-
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
用户组并添加用户
-
使用具有
sudo
权限的用户来登录你的Ubuntu。在这过程中,我们假设你已经登录了Ubuntu。
-
创建
docker
用户组并添加用户。$ sudo usermod -aG docker ubuntu
-
注销登录并重新登录
这里要确保你运行用户的权限。
-
验证
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) 来启用内存和交换空间。开启方法如下:
-
使用具有
sudo
权限的用户来登录你的Ubuntu。 -
编辑
/etc/default/grub
文件 -
设置
GRUB_CMDLINE_LINUX
的值如下:GRUB_CMDLINE_LINUX="cgroup_enable=memory swapaccount=1"
-
保存和关闭文件
-
更新 GRUB
$ sudo update-grub
-
重启你的系统。
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