一、YUM安装

1、卸载旧版本docker



# yum remove docker \ docker-common \ docker-selinux \ docker-engine



 

2、安装docker CE(设置镜像仓库,需要修改成国内源)

  • 安装所需的软件包。yum-utils 提供了 yum-config-manager 实用程序,并且 devicemapper 存储驱动需要 device-mapper-persistent-data 和 lvm2。

# yum install -y yum-utils device-mapper-persistent-data lvm2



  • 使用下列命令设置 stable 镜像仓库。您始终需要使用 stable 镜像仓库,即使您还需要通过 edge 或 testing 镜像仓库安装构建也是如此。
    # yum-config-manager \ --add-repo \ https://download.docker.com/linux/centos/docker-ce.repo

3.docker-ce.repo源进行安装docker-ce,由于国内访问该地址网络原因,会报错,所以需要更改docker-ce.repo中的docker地址



# sed -i 's+download.docker.com+mirrors.tuna.tsinghua.edu.cn/docker-ce+' /etc/yum.repos.d/docker-ce.repo



4.可选:启用 edge 和 testing 镜像仓库。这些镜像仓库包含在上述 docker.repo 文件中,但默认情况下处于禁用状态。您可以将它们与 stable 镜像仓库一起启用。



# yum-config-manager --enable docker-ce-edge # yum-config-manager --enable docker-ce-testing



stable版本是季度发布方式,比如17.03, 17.06, 17.09

edge版本是月份发布方式, 比如17.03, 17.04......

5.可以通过运行带有 --disable 标志的 yum-config-manager 命令来禁用 edge 或 testing 镜像仓库。如需将其重新启用,请使用 --enable 标志。以下命令用于禁用 edge 镜像仓库。



# yum-config-manager --disable docker-ce-edge



3、生产环境中应该选择特定版本,而不是每次安装最新版,以下示例sort -r可倒序排列版本号



# yum list docker-ce.x86_64 --showduplicates | sort -r



已加载插件:fastestmirror
已安装的软件包
可安装的软件包
 * updates: ap.stykers.moe
Loading mirror speeds from cached hostfile
 * extras: mirrors.huaweicloud.com
docker-ce.x86_64            3:18.09.3-3.el7                     docker-ce-stable
docker-ce.x86_64            3:18.09.3-3.el7                     docker-ce-edge  
docker-ce.x86_64            3:18.09.3-3.el7                     @docker-ce-edge 
docker-ce.x86_64            3:18.09.2-3.el7                     docker-ce-stable
docker-ce.x86_64            3:18.09.2-3.el7                     docker-ce-edge  
docker-ce.x86_64            3:18.09.1-3.el7                     docker-ce-stable
docker-ce.x86_64            3:18.09.1-3.el7                     docker-ce-edge  
docker-ce.x86_64            3:18.09.0-3.el7                     docker-ce-stable
docker-ce.x86_64            3:18.09.0-3.el7                     docker-ce-edge  
docker-ce.x86_64            18.06.3.ce-3.el7                    docker-ce-stable
docker-ce.x86_64            18.06.3.ce-3.el7                    docker-ce-edge  
docker-ce.x86_64            18.06.2.ce-3.el7                    docker-ce-stable
docker-ce.x86_64            18.06.2.ce-3.el7                    docker-ce-edge  
docker-ce.x86_64            18.06.1.ce-3.el7                    docker-ce-stable
docker-ce.x86_64            18.06.1.ce-3.el7                    docker-ce-edge  
docker-ce.x86_64            18.06.0.ce-3.el7                    docker-ce-stable
docker-ce.x86_64            18.06.0.ce-3.el7                    docker-ce-edge  
docker-ce.x86_64            18.05.0.ce-3.el7.centos             docker-ce-edge  
docker-ce.x86_64            18.04.0.ce-3.el7.centos             docker-ce-edge  
docker-ce.x86_64            18.03.1.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            18.03.1.ce-1.el7.centos             docker-ce-edge  
docker-ce.x86_64            18.03.0.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            18.03.0.ce-1.el7.centos             docker-ce-edge  
docker-ce.x86_64            18.02.0.ce-1.el7.centos             docker-ce-edge  
docker-ce.x86_64            18.01.0.ce-1.el7.centos             docker-ce-edge  
docker-ce.x86_64            17.12.1.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.12.1.ce-1.el7.centos             docker-ce-edge  
docker-ce.x86_64            17.12.0.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.12.0.ce-1.el7.centos             docker-ce-edge  
docker-ce.x86_64            17.11.0.ce-1.el7.centos             docker-ce-edge  
docker-ce.x86_64            17.10.0.ce-1.el7.centos             docker-ce-edge  
docker-ce.x86_64            17.09.1.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.09.1.ce-1.el7.centos             docker-ce-edge  
docker-ce.x86_64            17.09.0.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.09.0.ce-1.el7.centos             docker-ce-edge  
docker-ce.x86_64            17.07.0.ce-1.el7.centos             docker-ce-edge  
docker-ce.x86_64            17.06.2.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.06.2.ce-1.el7.centos             docker-ce-edge  
docker-ce.x86_64            17.06.1.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.06.1.ce-1.el7.centos             docker-ce-edge  
docker-ce.x86_64            17.06.0.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.06.0.ce-1.el7.centos             docker-ce-edge  
docker-ce.x86_64            17.05.0.ce-1.el7.centos             docker-ce-edge  
docker-ce.x86_64            17.04.0.ce-1.el7.centos             docker-ce-edge  
docker-ce.x86_64            17.03.3.ce-1.el7                    docker-ce-stable
docker-ce.x86_64            17.03.3.ce-1.el7                    docker-ce-edge  
docker-ce.x86_64            17.03.2.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.03.1.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.03.0.ce-1.el7.centos             docker-ce-stable
 * base: mirrors.huaweicloud.com



  • 此列表的内容取决于启用了哪些镜像仓库,并且将特定于您的 CentOS 版本(在本示例中,由版本中的 .el7 后缀表示)。选择一个特定版本进行安装。第二列为版本字符串。第三列为镜像仓库名称,它表示软件包来自哪个镜像仓库并按扩展其稳定性级别列出。如需安装特定版本,请将版本字符串附加到软件包名称,并使用连字符 (-) 分隔它们:

# yum install -y docker-ce-<VERSION>



  • 安装最新版

# yum install -y docker-ce



4、启动docker



# systemctl start docker



  • 开机自启

# systemctl enalbe docker



5、验证是否正确安装docker



# docker run hello-world



卸载Docker CE
1、卸载Docker软件包:



# yum remove docker-ce



2、主机上的镜像、容器、存储卷或定制配置文件不会删除;如需要删除需要删除/var/lib/docker目录



# rm -rf /var/lib/docker目录



需要手动删除任何已编辑的配置文件