51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

Docker 版本升级

1、查看系统要求

Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看CentOS的内核版本。

uname -a

2、删除旧版本

yum remove docker  docker-common docker-selinux docker-engine

3、安装需要的软件包

yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的

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

4、设置Docker yum源

sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

5、查看所有仓库中所有docker版本

可以查看所有仓库中所有docker版本,并选择特定的版本安装。

yum list docker-ce --showduplicates | sort -r

6、安装docker

sudo yum install docker-ce

由于repo中默认只开启stable仓库,故这里安装的是最新稳18.03.0.ce-1.el7.centos。

如果要安装特定版本:

sudo yum install docker-ce-18.06.1.ce

7、启动

设置为开机启动

systemctl enable docker

启动

systemctl start docker

查看启动状态

systemctl status docker

查看版本

docker version

8、问题

有部分安装的docker版本太旧,对docker进行版本升级后,启动旧版本创建的容器时遇到这个错误:

docker start 容器ID
Error response from daemon: Unknown runtime specified docker-runc

当从不兼容的版本升级docker并且升级后无法启动docker容器时会出现这种情况,原因是新旧版本的两个版本命令所在目录不同,可通过以下命令进行修复
{#_14}

[root@centos7 /root]#grep -rl 'docker-runc' /var/lib/docker/containers/ | xargs sed -i 's/docker-runc/runc/g'
[root@centos7 /root]#systemctl stop docker[root@centos7 /root]#systemctl start docker

赞(1)
未经允许不得转载:工具盒子 » Docker 版本升级