Linux安装Docker完整教程
先决条件
Docker从17.03版本之后分为CE(Community Edition: 社区版)和EE(Enterprise Edition: 企业版)。相对于社区版本,企业版本强调安全性,但需付费使用。这里我们使用社区版本即可。
Docker支持64位版本的CentOS 7和CentOS 8及更高版本,它要求Linux内核版本不低于3.10。
查看Linux版本的命令这里推荐两种:lsb_release -a或 cat /etc/redhat-release。
lsb_release -a查看效果:
1 | $ lsb_release -a |
cat /etc/redhat-release查看版本效果:
1 | $ cat /etc/redhat-release |
显然,当前Linux系统为CentOS7。再查一下内核版本是否不低于3.10。
查看内核版本有三种方式:
- cat /proc/version
- uname -a
- uname -r
三种形式都可以查看到内容版本,比如:
1 | $ uname -r |
使用官方安装脚本自动安装
安装命令如下:
1 | curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun |
也可以使用国内 daocloud 一键安装命令:
1 | curl -sSL https://get.daocloud.io/docker | sh |
使用存储库安装
卸载旧版本
旧版本的 Docker 名称为 docker或 docker-engine。在尝试安装新版本之前卸载任何此类旧版本以及相关的依赖项:
1 | $sudo yum remove docker \ |
yum如果报告没有安装这些软件包,那也没关系。
当您卸载 Docker 时,存储在其中的图像、容器、卷和网络 /var/lib/docker/不会自动删除。
设置存储库
在新主机上首次安装 Docker Engine 之前,您需要设置 Docker 存储库。之后,您可以从存储库安装和更新 Docker。
安装 yum-utils包(提供 yum-config-manager 实用程序)并设置存储库。
1 | $sudo yum install -y yum-utils |
使用以下命令来设置稳定的仓库。
官方源地址(比较慢)
1 | $ sudo yum-config-manager \ |
可以选择国内的一些源地址:
阿里云
1 | $ sudo yum-config-manager \ |
清华大学源
1 | $ sudo yum-config-manager \ |
安装 Docker 引擎
安装 Docker Engine、containerd 和 Docker Compose:
要安装最新版本,请运行:
1
$sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
如果提示接受 GPG 密钥,请验证指纹是否匹配
060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35,如果匹配,则接受。此命令安装 Docker,但不会启动 Docker。它还会创建一个
docker组,但是默认情况下不会向该组添加任何用户。启动Docker。
1
$sudo systemctl start docker
通过运行映像验证 Docker Engine 安装是否成功
hello-world。1
$sudo docker run hello-world
此命令下载测试图像并在容器中运行它。当容器运行时,它会打印一条确认消息并退出。
要安装特定版本,首先列出存储库中的可用版本:
1
2
3
4
5
6$yum list docker-ce --showduplicates | sort -r
docker-ce.x86_64 3:18.09.1-3.el7 docker-ce-stable
docker-ce.x86_64 3:18.09.0-3.el7 docker-ce-stable
docker-ce.x86_64 18.06.1.ce-3.el7 docker-ce-stable
docker-ce.x86_64 18.06.0.ce-3.el7 docker-ce-stable返回的列表取决于启用了哪些存储库,并且特定于您的 CentOS 版本(
.el7在此示例中由后缀表示)。通过其完全限定的包名称安装特定版本,即包名称 (
docker-ce) 加上版本字符串(第 2 列),从第一个冒号 (:) 开始,直到第一个连字符,由连字符 (-) 分隔。例如,docker-ce-18.09.1。替换
<VERSION_STRING>为所需的版本,然后运行以下命令进行安装:1
$sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io docker-buildx-plugin docker-compose-plugin
此命令安装 Docker,但不会启动 Docker。它还会创建一个
docker组,但是默认情况下不会向该组添加任何用户。启动Docker。
1
$sudo systemctl start docker
通过运行映像验证 Docker Engine 安装是否成功
hello-world。1
$sudo docker run hello-world
此命令下载测试图像并在容器中运行它。当容器运行时,它会打印一条确认消息并退出。
除了启动Docker,一些其他启动相关的命令:
- 守护进程重启:systemctl daemon-reload
- 重启Docker服务:systemctl restart docker / service docker restart
- 关闭Docker服务:docker service docker stop / docker systemctl stop docker
卸载 docker引擎
卸载 Docker Engine、CLI、containerd 和 Docker Compose 包:
1 | $sudo yum remove docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras |
主机上的图像、容器、卷或自定义配置文件不会自动删除。删除所有镜像、容器和卷:
1 | $sudo rm -rf /var/lib/docker |
您必须手动删除任何已编辑的配置文件。
配置镜像加速器
国内从 DockerHub 拉取镜像有时会遇到困难,此时可以配置镜像加速器。Docker 官方和国内很多云服务商都提供了国内加速器服务,例如:
- Docker 官方加速器 https://registry.docker-cn.com
- 科大镜像:https://docker.mirrors.ustc.edu.cn/
- 网易:https://hub-mirror.c.163.com/
- 阿里云:https://<你的ID>.mirror.aliyuncs.com
- 七牛云加速器:https://reg-mirror.qiniu.com
当配置某一个加速器地址之后,若发现拉取不到镜像,请切换到另一个加速器地址。国内各大云服务商均提供了 Docker 镜像加速服务,建议根据运行 Docker 的云平台选择对应的镜像加速服务。
阿里云镜像获取地址:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors,登陆后,左侧菜单选中镜像加速器就可以看到你的专属地址了
第一种,按照阿里云官网步骤
1 | sudo mkdir -p /etc/docker |
第二种,直接粘贴到文件中
1 | vim /etc/docker/daemon.json |
将其中的JSON串粘贴到刚才打开编辑的daemon.json文件中:
1 | { |
注意:
- 上面的是我个人的,我用xxx修改了,大家可以用支付宝或淘宝生成自己的加速器;
- sudo命令是针对非管理员用户的,如果你是非管理员,该命令必不可少,是管理员加不加无所谓;
- tee到最后的EOF命令是一个整体,不可分开执行。

