Ubuntu16.04(LTS)安装Docker
警告:切勿在没有配置Docker API源的情况下使用apt命令安装Docker
准备工作
系统要求
Docker CE支持以下版本的Ubuntu操作系统
- Artful 17.10 (Docker CE 17.11 Edge +)
- Xenial 16.04 (LTS) 推荐使用,以下操作基于该版本
- Trusty 14.04 (LTS)
卸载旧版本
旧版本的Docker称为docker
或者 docker-engine
,使用以下命令卸载旧版本:
$ sudo apt-get remove docker \
docker-engine \
docker.io
使用脚本自动安装(推荐)
在测试或开发环境中 Docker 官方为了简化安装流程,提供了一套便捷的安装脚本,Ubuntu 系统上可以使用这套脚本安装:
$ curl -fsSL get.docker.com -o get-docker.sh
# 可能会出现 404 错误,请移步下面的特别说明
$ sudo sh get-docker.sh --mirror Aliyun
执行这个命令后,脚本就会自动的将一切准备工作做好,并且把 Docker CE 的 Edge 版本安装在系统中
启动Docker CE
$ sudo systemctl enable docker
$ sudo systemctl start docker
镜像加速
鉴于国内网络问题,后续拉取 Docker 镜像十分缓慢,强烈建议安装 Docker 之后配置国内镜像加速
您可以配置 Docker 守护进程默认使用 Docker 官方镜像加速。这样您可以默认通过官方镜像加速拉取镜像,而无需在每次拉取时指定 registry.docker-cn.com。
您可以在 Docker 守护进程启动时传入 --registry-mirror 参数:
$ docker --registry-mirror=https://registry.docker-cn.com daemon
为了永久性保留更改,您可以修改 /etc/docker/daemon.json 文件并添加上 registry-mirrors 键值。(推荐)
{
"registry-mirrors": ["https://registry.docker-cn.com"]
}
修改保存后重启 Docker 以使配置生效
$ sudo systemctl daemon-reload
$ sudo systemctl restart docker
开启远程端口
docker 提供了远程控制API,采用的是restful风格,需开放端口
- Centos/ubuntu通用开启方式:
vim /lib/systemd/system/docker.service
找到 ExecStart行修改为
$ vim /lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:5678 -H unix:///var/run/docker.sock
- ubuntu16.4 开启方式
修改daemon配置:/etc/docker/daemon.json
添加如下行:
“hosts”: [“fd://”, “tcp://0.0.0.0:5678”]
[root@scrt /lib/systemd/system]# cat /etc/docker/daemon.json
{
"registry-mirrors": ["https://ipjfw2ev.mirror.aliyuncs.com"],
"insecure-registries": ["192.168.0.122:5000"],
"hosts": ["fd://", "tcp://0.0.0.0:5678"]
}
- 修改保存后重启 Docker 以使配置生效
- 验证 ps aux|grep dockerd
注意:Docker Engine V1.12 之后版本,用户可以自行创建 daemon.json 文件对 Docker Engine 进行配置和调整。两种方式选其一,否则会报错