Deepo是一个几乎包含所有流行深度学习框架的Docker映像,拥有一个完整的可复制的深度学习研究环境。它涵盖了当前最流行的深度学习框架:
theano,tensorflow,sonnet,pytorch,keras,lasagne,mxnet,cntk,chainer,caffe,torch。
使用的是ubuntu17.0.4
建议大家都看一下docker的官方网站,里面说的很详细。点击打开链接
步骤一:版本选择
Docker有两个版本:Community Edition (CE)和Enterprise Edition (EE)。
Docker Community Edition (CE)是开发人员和小型团队的理想选择,他们希望从Docker开始,并尝试使用基于容器的应用程序。Docker CE有两个更新通道,:稳定每季度给你可靠的更新。Edge每月提供新功能。有关Docker CE的更多信息,请参见Docker Community Edition。
Docker Enterprise Edition (EE)是为企业开发和IT团队设计的,他们构建、交付和运行在规模生产中的关键应用程序。有关Docker EE的更多信息,包括购买选项,请参阅Docker Enterprise Edition。
详情:点击打开链接
我选择安装ce
步骤二:安装仓库
1)更新apt软件包索引。
$ sudo apt-get update
2)安装包时,允许apt在HTTPS上使用存储库:
$ sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
software-properties-common
3)添加Docker的官方GPG密钥:
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
通过搜索指纹的最后8个字符,确认你现在已经拥有了指纹编号9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88的密钥。
$ sudo apt-key fingerprint 0EBFCD88
pub 4096R/0EBFCD88 2017-02-22
Key fingerprint = 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
uid Docker Release (CE deb)
sub 4096R/F273FCD8 2017-02-22
使用下面的命令来设置稳定的存储库。您总是需要稳定的存储库,即使您希望从边缘或测试存储库安装构建。要添加边缘或测试存储库,请在下面的命令中添加单词edge或test(或两者)。
注意:下面的lsb_release -cs子命令将返回您的Ubuntu发行版的名称,比如xenial。有时,在像Linux Mint这样的发行版中,您可能需要将$(lsb_release -cs)更改为您的父Ubuntu发行版。例如,如果您使用的是Linux Mint Rafaela,您可以使用trusty。
$ sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
步骤三、安装docker
1)更新apt软件包索引。
$ sudo apt-get update
2)安装最新版本的Docker CE,或进入下一个步骤安装特定版本。替换了Docker的任何现有安装。
sudo apt-get install docker-ce
需要安装多个docker存储库吗?安装了多个存储库,更新的时候可能带来不稳定的因素。
4)在系统上,您应该安装一个特定版本的Docker CE,而不是总是使用最新版本。下面命令,列出可用的版本供您安装。
$ apt-cache madison docker-ce
对上面输出的版本介绍:列表的内容取决于启用了哪些存储库。选择要安装的版本。第二列是版本的字符串。第三列是存储库名称,它指示包来自哪个存储库,并通过扩展它的稳定性级别。要安装一个特定的版本,将版本字符串附加到包名称,并通过等号(=)将它们分开:使用如下的命令(VERSION是您要安装的版本信息)
$ sudo apt-get install docker-ce=VERSION
5)通过运行hello-world来验证是不是安装成功了
$ sudo docker run hello-world
这个命令下载一个测试图像并在容器中运行。容器运行时,会打印一条信息消息并退出。
Docker CE已安装并正在运行。该docker组已创建,但未添加用户。您需要使用sudo运行Docker命令。继续Linux postinstall以允许非特权用户运行Docker命令以及其他可选的配置步骤。
要创建docker组并添加您的用户:
6)创建docker组
$ sudo groupadd docker
7)将您的用户添加到docker组中。
$ sudo usermod -aG docker $USER
8)注销并且重新登陆,验证您的组成员资格,如果是虚拟机上的话,就重启一下。
9)验证您可以运行docker不使用sudo命令
$ docker run hello-world
10)docker已经安装成功了,现在分享一下docker的使用。
docker容器的使用,菜鸟教程
docker中文教程
docker问答录
简介:NVIDIA-Docker-- 可使用GPU的Docker容器
想要驱动GPU,就需要安装GPU驱动(我是的GTX1080ti),可能有时候通过NVIDIA官网下载显卡驱动比较慢,我们可以添加ppa库,通过ppa安装显卡驱动,这步可有可无,用户自行决定,输入代码如下:
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt-get install nvidia-384
安装好了,重启系统,使用下面命令,可以查看GPU
nvidia-smi
看了很多人安装驱动出现了很多的问题,我貌似这两步就弄好了。现在正式开始nvidia-docker的安装。
步骤一:按照这里的说明安装
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | \
sudo apt-key add -
curl -s -L https://nvidia.github.io/nvidia-docker/ubuntu16.04/amd64/nvidia-docker.list | \
sudo tee /etc/apt/sources.list.d/nvidia-docker.list
sudo apt-get update
步骤二:安装nvidia-docker2软件包并重新加载Docker守护程序配置
sudo apt-get install nvidia-docker2
sudo pkill -SIGHUP dockerd
中国官方镜像加速
步骤三:docker容器使用cuda加速
docker run --runtime=nvidia --rm nvidia/cuda nvidia-smi
Deepo是一组Docker图像。
允许您快速建立您的深度学习研究环境。
支持几乎所有常用的深度学习框架。
支持GPU加速(CUDA和cuDNN),也适用于cpu模式。
适用于Linux (CPU版本/GPU版本)、Windows (CPU版本)和OS X (CPU版本)
以及他们的Dockerfile生成器。
允许您使用legolike模块自定义您自己的环境。
自动地解决对您的依赖关系。
https://github.com/ufoym/deepo
步骤一:安装Docker and nvidia-docker.(上面也有教程,官网也有很详细的教程)
步骤二 :从Docker hub上获取所有的镜像(此过程在下载镜像,速度有点慢,需要等待)
docker pull ufoym/deepo
步骤三:使Deepo能够从docker容器中使用GPU
nvidia-docker run --rm ufoym/deepo nvidia-smi
步骤四:交互式shell,帮助你创建一个容器(创建这个容器,你退出之后,容器依然存在)
nvidia-docker run -it ufoym/deepo bash
1、打开终端,输入命令:docker,有很多的命令以及命令解释
2、查看本地所有镜像,命令:docker images
-a :列出本地所有的镜像(含中间映像层,默认情况下,过滤掉中间映像层);
REPOSITORY:表示镜像的仓库源
TAG:镜像的标签
IMAGE ID:镜像ID
CREATED:镜像创建时间
SIZE:镜像大小
3、Docker的镜像称为image,容器称为container。对于Docker来说,image是静态的,类似于操作系统快照,而container则是动态的,是image的运行实例。比如,有一个image名称为ubuntu,那么比如现在我们启动这个image的container并且进入到这个container的bash命令行中:使用本地的镜像通过交互式shell创建容器,命令:
docker run -it --name test ufoym/deepo:all-py36-jupyter /bin/bash
--name test表示容器的名称为test,ufoym/deepo命令docker images中的repository的值,all-py36-jupyter表示tag镜像标签
4、退出交互式容器,命令:exit
5、查看已经创建所有的容器,命令:docker ps -a
6、强制删除创建名字为test的容器,命令:docker rm test
7、后台启动名称为softbei的容器,命令:docker start softbei
8、进入softbei容器的终端并且退出时,容器继续运行,命令:docker exec -it softbei /bin/bash
9、实时现实GPU的用量,命令:watch -n 1 nvidia-smi
这个东西真的好。