1.卸载旧版本
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
2.安装依赖包
安装必须的包。yum-utils提供了yum-config-manager实用程序,并且device-mapper-persistent-data和lvm2需要devicemapper存储驱动程序。
3.设置稳定的数据仓库
sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
3.可选:启用test和edge
这些存储库包含在上面的docker.repo文件中,但默认情况下禁用。 您可以将它们与稳定版本库一起启用。
sudo yum-config-manager --enable docker-ce-edge
sudo yum-config-manager --enable docker-ce-test
可以通过运行带有--disable标志的yum-config-manager命令来禁用edge或test库。 要重新启用它,请使用--enable标志。 以下命令禁用edge存储库。
sudo yum-config-manager --disable docker-ce-edge
4.安装最新版本的Docker CE
sudo yum install docker-ce
在生产系统上,您应该安装特定版本的Docker CE,而不是始终使用最新版本。 列出可用的版本。 此示例使用排序-r命令对结果进行排序,版本号由最高到最低,并被截断。
yum list docker-ce --showduplicates | sort -r
image.png
5.启动Docker
sudo systemctl start docker
启动Docker报错如下:
Job for docker.service failed because the control process exited with error code. See "systemctl status docker.service" and "journalctl -xe" for details.
image.png
解决方案如下:
image.png
sudo vim /etc/docker/daemon.json
"registry-mirrors":
{
"storage-driver"
:
"devicemapper"
}
sudo systemctl start docker
6.运行hello-world镜像来验证Docker是否正确安装
sudo docker run hello-world
报错如下:docker: error pulling image configuration
image.png
解决方案:利用目前是永久免费的DaoCloud的加速器:注册账号后进入https://www.daocloud.io/mirror#accelerator-doc
image.png
curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://【你的DaoCloud的加速器ID】.m.daocloud.io
sudo systemctl restart docker
sudo docker run hello-world
按照上图配置,终于成功啦~
image.png
参考博客
作者:peerless_1024