1.安装的版本要求

uname -r 查看内核版本
Centos7 64 内核3.1以上
Centos6.5 64 内核要2.6.32-431以上

1.1卸载方式:

  1. 卸载Docker
  2. 卸载Docker EngineCLIContainerd软件包:
  3. $ sudo yum remove docker-ce docker-ce-cli containerd.io
  4. 主机上的映像,容器,卷或自定义配置文件不会自动删除。要删除所有图像,容器和卷:
  5. $ sudo rm -rf /var/lib/docker

2.基于 centos 7的安装

用的是CentOS-7-x86_64-DVD-1708 的镜像文件。
安装步骤:

2.1设置仓库

安装yum-utils软件包(提供yum-config-manager 实用程序)并设置稳定的存储库。

  1. $ sudo yum install -y yum-utils
  2. $ sudo yum-config-manager \
  3. --add-repo \
  4. https://download.docker.com/linux/centos/docker-ce.repo

yum -y install yum-utils 遇到的报错:

  1. Loaded plugins: fastestmirror, langpacks
  2. Loading mirror speeds from cached hostfile
  3. No package yum-util available.
  4. Error: Nothing to do
    报错信息翻译过来如下

    1.加载插件:fastestmirror, langpacks
    2.从缓存的主机文件加载镜像速度
    3.没有包yum-util可用。
    4.错误:啥都没做
    大概可以了解,应该是加载插件的问题,出现这个错误,通常是第一次安装Docker才会出现。
    解决步骤:
    1、禁用fastestmirror插件
    编辑fastestmirror.conf文件
    vim /etc/yum/pluginconf.d/fastestmirror.conf
    将enabled=1改为enabled=0,保存。
    2.修改yum的配置文件,不使用插件。
    编辑yum.conf文件
    vim /etc/yum.conf
    将plugins=1改为plugins=0

如果还不行
如果通过上述两步,可能是缺少epel
安装epel

  1. yum install epel-release epel是用centos6安装所需要的。

2.1.1设置yum源(选择其中一个)

yum-config-manager —add-repo http://download.docker.com/linux/centos/docker-ce.repo(中央仓库)
yum-config-manager —add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo(阿里仓库)

2.2安装DOCKER引擎

  1. 安装最新版本的Docker Engine和容器
  2. 会提示是否接受密钥匹配,敲yes就可以了。
    1. [root@localhost docker]# yum install docker-ce docker-ce-cli containerd.io

2.要安装特定版本的Docker Engine,可以查看所有仓库中所有docker版本,然后选择并安装:
一种。列出并排序您存储库中可用的版本。此示例按版本号(从高到低)对结果进行排序,并被截断:

目前最新的版本是 docker-ce-20.10.2

  1. [root@test etc]# yum list docker-ce --showduplicates | sort -r
  2. Installed Packages
  3. docker-ce.x86_64 3:20.10.2-3.el7 docker-ce-stable
  4. ...
  5. ...
  6. docker-ce.x86_64 17.03.0.ce-1.el7.centos docker-ce-stable
  7. Available Packages

返回的列表取决于启用的仓库,并且特定于安装的CentOS版本(.el7此示例中的后缀表示)。
通过其完全合格的软件包名称安装特定版本,该软件包名称是软件包名称(docker-ce)加上版本字符串(第二列),从第一个冒号(:)一直到第一个连字符,并用连字符(-)分隔。例如,docker-ce-20.10.2。也可以用docker-ce-17.03.0.ce

  1. [root@localhost docker]# yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io

3.启动Docker

  1. [root@localhost docker]# systemctl start docker

4.通过运行hello-world 映像来验证是否正确安装了Docker Engine 。

  1. 需要一个 Helloworld的镜像
  2. [root@localhost docker]# docker run hello-world

5.检查docker版本,这里可以看到是 20.10.2版本的,是用安装最新版本的方式去获取的 yum install docker-ce

  1. [root@localhost docker]# docker version
  2. Client: Docker Engine - Community
  3. Version: 20.10.2
  4. API version: 1.41
  5. Go version: go1.13.15
  6. Git commit: 2291f61
  7. Built: Mon Dec 28 16:17:48 2020
  8. OS/Arch: linux/amd64
  9. Context: default
  10. Experimental: true
  11. Server: Docker Engine - Community
  12. Engine:
  13. Version: 20.10.2
  14. API version: 1.41 (minimum version 1.12)
  15. Go version: go1.13.15
  16. Git commit: 8891c58
  17. Built: Mon Dec 28 16:16:13 2020
  18. OS/Arch: linux/amd64
  19. Experimental: false
  20. containerd:
  21. Version: 1.4.3
  22. GitCommit: 269548fa27e0089a8b8278fc4fc781d7f65a939b
  23. runc:
  24. Version: 1.0.0-rc92
  25. GitCommit: ff819c7e9184c13b7c2607fe6c30ae19403a7aff
  26. docker-init:
  27. Version: 0.19.0
  28. GitCommit: de40ad0

2.3升级Docker引擎

2.3.1通过命令安装最新版:
yum -y upgrade 将 yum包更新到最新 PS:不建议,这个命令不光会升级所有的包,还会升级内核版本,往往生产上对于内核的要求比较高。
yum install docker-engine 最新版本的引擎

  1. [root@localhost docker]# yum -y upgrade
  2. Complete!
  3. 没有最新的可以装。
  4. [root@localhost docker]# yum install docker-engine
  5. No package docker-engine available.
  6. Error: Nothing to do

2.3.2安装指定版本的软件包:
如果无法使用Docker的存储库安装Docker,则可以下载该.rpm发行版的 文件并手动安装。每次要升级Docker Engine时,都需要下载一个新文件。

  1. 转到https://download.docker.com/linux/centos/ 并选择您的CentOS版本。然后浏览x86_64/stable/Packages/ 并下载.rpm您要安装的Docker版本的文件。

    注意:要安装夜间测试(预发布)软件包,stable请将上述URL中的单词更改为nightlytest了解每晚测试频道

  2. 安装Docker Engine,将下面的路径更改为您下载Docker软件包的路径。

    1. $ sudo yum install /path/to/package.rpm
  3. Docker已安装但尚未启动。docker创建该组,但没有用户添加到该组。

  4. 启动Docker

    1. $ sudo systemctl start docker
  5. 通过运行hello-world 映像来验证是否正确安装了Docker Engine 。

    1. $ sudo docker run hello-world

    3.基于 centos6的安装