1. 安装前检查
- 内核版本
$ uname -a - 检查Device Mapper(存储驱动)
$ ls -l /sys/class/misc/device-mapper
2. Ubuntu安装docker推荐使用docker维护的版本库
分步骤安装
- 检查APT的HTTPS支持 查看
/usr/lib/apt/methods/https
文件是否存在,如果不存在,运行安装命令
$ apt-get update
$ apt-get install -y apt-transport-https ca-certificates - 添加Docker的APT仓库
Precise 12.04 (LTS) => deb https://apt.dockerproject.org/repo ubuntu-precise main
Precise 12.04 (LTS) => deb https://apt.dockerproject.org/repo ubuntu-precise main
Xenial 16.04 (LTS) => deb https://apt.dockerproject.org/repo ubuntu-xenial main
$ echo "<REPO>" | sudo tee /etc/apt/sources.list.d/docker.list
添加仓库的key
$ sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv- keys 58118E89F3A912897C070ADBF76221572C52609D`-
对于Ubuntu Xenial 16.04 (LTS) 和 Ubuntu Trusty 14.04 (LTS) 建议安装
linux-image-extra-*
内核包$ sudo apt-get update $ sudo apt-get install linux-image-extra-$(uname -r) linux-image-extra-virtual
安装Docker
- 更新APT索引
$ sudo apt-get update
- 安装Docker
$ sudo apt-get install docker-engine
- 开启daemon
$ sudo service docker start
- 测试
$ sudo docker run hello-world
采用脚本安装
Docker 的安装资源文件存放在Amazon S3,国内下载速度极其缓慢。您可以通过执行下面的命令,使用 DaoCloud 镜像站点,高速安装Docker:
$ curl -sSL https://get.daocloud.io/docker | sh
3.使用非root账户
由于docker的daemon绑定的是一个Unix socket而不是一个TCP port。在默认配置中,Unix socket是属于root用户的,或者其他的用户可以使用sudo
。正是由于这个原因,docker daemon总是以root权限来运行。
但是,每次都输入 sudo
来使用daemon命令的话,太过于繁琐。所以Docker官方为我们提供的解决方式就是,添加一个Unix group,然后将其他的用户添加进来。这样当docker daemon 启动后,属于该组的成员均可以拥有Unix socket的读些权限。
- 创建一个docker group
$ sudo groupadd docker - 添加用户到docker group
$ sudo usermod -aG docker $USER - 重新启动docker daemon
$ sudo service docker restart - 最后注销一下,重新登录后既可以在其他用户下不使用
sudo
来执行相关的命令