更新于 

Docker安装

Docker官方建议在Ubuntu中安装,因为Docker是基于Ubuntu发布的,而且一般Docker出现的问题Ubuntu是最先更新或者打补丁的。在很多版本的CentOS中是不支持更新最新的一些补丁包的。

注:如果安装过则可以,/var/lib/docker/保留包括图像,容器,卷和网络在内的内容。

2.1、CentOS安装

Docker 运行在 CentOS 7 上,要求系统为64位、系统内核版本为 3.10 以上。
Docker 运行在 CentOS-6.5 或更高的版本的 CentOS 上,要求系统为64位、系统内核版本为 2.6.32-431 或者更高版本。

2.1.1、检测版本

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#检测Linux版本  命令:uname -r
uname -r
3.10.0-693.2.2.el7.x86_64

yum 包更新到最新
sudo yum update

#安装系统依赖
#需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的
sudo yum install -y yum-utils device-mapper-persistent-data lvm2

#设置yum源为阿里云 --添加软件源信息
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

#更新yum缓存
sudo yum makecache fast

2.1.2、查看所有docker版本

1
2
#查看所有docker版本
#yum list docker-ce --showduplicates | sort -r

2.1.3、安装docker

1
2
3
#安装Docker-ce
sudo yum -y install docker-ce

2.1.4、启动服务并设置开机启动

1
2
3
4
5
#启动 Docker 后台服务
sudo systemctl start docker

#设置开机启动
sudo systemctl enable docker

2.1.4、安装后查看docker版本

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#安装检测  当提示安装的版本号就已经标示安装完成
docker --version
Docker version 18.09.6, build 481bc77156

#
docker version
Client:
Version: 18.09.6
API version: 1.39
Go version: go1.10.8
Git commit: 481bc77156
Built: Sat May 4 02:34:58 2019
OS/Arch: linux/amd64
Experimental: false
Server: Docker Engine - Community
Engine:
Version: 18.09.6
API version: 1.39 (minimum version 1.12)
Go version: go1.10.8
Git commit: 481bc77
Built: Sat May 4 02:02:43 2019
OS/Arch: linux/amd64
Experimental: false

2.2、Ubuntu安装

2.2.1、使用apt-get命令安装

1
sudo apt-get install docker.io -y

2.2.2、查看Docker版本

1
sudo docker -v

2.2.3、查看Docker的信息

1
sudo docker info

2.2.4、查看帮助文档

1
sudo docker --help

2.3、Windows安装

Windows中安装需要注意,Windows版本不同安装包会有所不同,如有需要请自行百度。

扩展:

A.卸载Docker

1.卸载Docker-CE

1
2
sudo yum remove docker-ce
sudo rm -rf /var/lib/docker

2.移除旧版本Docker

1
2
3
4
5
6
7
8
9
10
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine

B.开放Docker2375端口

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#编辑docker文件
sudo vim /lib/systemd/system/docker.service

#找到ExecStart=/usr/bin/dockerd
#在ExecStart=/usr/bin/dockerd后追加 -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock


#加载Docker守护线程
systemctl daemon-reload
#重启Docker
systemctl restart docker

#查看端口
netstat -tnlp |grep 2375

#进行2375端口(或浏览器访问http://ip:2375/info)
curl 127.0.0.1:2375/info

C.配置镜像加速器

鉴于国内网络问题,后续拉取 Docker 镜像十分缓慢,我们可以需要配置加速器来解决.
新版的 Docker 使用 /etc/docker/daemon.json(Linux)%programdata%\docker\config\daemon.json(Windows) 来配置 Daemon。

请在该配置文件中加入(没有该文件的话,请先建一个):

1、阿里云镜像加速

针对Docker客户端版本大于 1.10.0 的用户
您可以通过修改daemon配置文件> /etc/docker/daemon.json来使用加速器

1
2
3
4
5
6
7
8
9
10
#创建目录
sudo mkdir -p /etc/docker
# 追加配置
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://ortbpk0j.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

2、腾讯云镜像加速

3、163镜像加速

1
2
3
4
5
6
7
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["http://hub-mirror.c.163.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

4、ustc镜像加速

ustc是老牌的linux镜像服务提供者了,还在遥远的ubuntu 5.04版本的时候就在用。ustc的docker镜像加速器速度很快。ustc docker
mirror的优势之一就是不需要注册,是真正的公共服务。
https://lug.ustc.edu.cn/wiki/mirrors/help/docker

1
2
3
4
5
6
7
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker