Docker 版本升级

 Docker君   2021-05-08 18:04   6824 人阅读  1 条评论

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容器时会出现这种情况,原因是新旧版本的两个版本命令所在目录不同,可通过以下命令进行修复

[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


本文地址:https://dockerworld.cn/?id=126
版权声明:本文为原创文章,版权归 Docker君 所有,欢迎分享本文,转载请保留出处!

 发表评论


表情

 评论列表

  1. 访客
    访客  @回复

    删除旧版本,那已经创建的容器会丢失吗