Centos升级docker后启动容器报错“unknown or invalid runtime name”

这篇具有很好参考价值的文章主要介绍了Centos升级docker后启动容器报错“unknown or invalid runtime name”。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

  1. 操作系统为centos
  2. docker原来的版本为1.31.1,升级后为20
  3. 结尾有升级docker的教程
  4. 听说图片能凑字数,就截图贴了

插播一个问题记录

重装docker之后试试这个,折腾一上午
https://blog.csdn.net/weixin_43448598/article/details/109412104


我是分割线

加入后面出现无法强制删除镜像文件时,或者报错(无法创建容器)
按照如下解决
Centos升级docker后启动容器报错“unknown or invalid runtime name”,docker,centos,容器

1. 报错原因

“因为Docker的默认运行时环境runc被升级或替换所导致的。”

2. 解决过程

Centos升级docker后启动容器报错“unknown or invalid runtime name”,docker,centos,容器

【提问】:

我在升级docker后,无法启动容器,报错信息如下,请问我该如何做
“”Error response from daemon: unknown or invalid runtime name: docker-runc“

【回答】:

这个问题通常是因为Docker的默认运行时环境runc被升级或替换所导致的。

为了解决这个问题,你可以尝试以下步骤:

  1. 确认是否已经安装了新的运行时环境,例如“containerd”或“cri-o”等,以取代原来的runc。如果是,则应该相应地更改Docker的运行时环境。

  2. 如果未更改Docker运行时环境,可以尝试重新安装Docker,以便恢复缺失的runc运行时环境。

  3. 如果重新安装Docker后仍然出现问题,则可以尝试使用旧版本的Docker,这通常可以通过将docker的版本降低到之前的版本来实现。

  4. 最后,你还可以尝试升级或更新docker-compose,因为它也可能会影响Docker运行时环境的配置。

希望这些方法能够帮助你解决这个问题。如果问题仍然存在,请提供更多的详细信息,以便我们提供更准确的帮助。


Centos升级docker后启动容器报错“unknown or invalid runtime name”,docker,centos,容器

【提问】:

能将步骤1具体化一点吗,我现在是centos系统

【回答】:

好的,下面是针对CentOS系统的具体步骤:

  1. 确认已安装新的运行时环境

使用以下命令来检查是否已在CentOS系统上安装了新的运行时环境:

systemctl status containerd

如果输出的结果显示containerd服务已经运行,则说明containerd已经安装在系统中。

如果未安装containerd,可以通过以下命令安装:

yum install -y containerd.io
  1. 更改Docker的运行时环境

如果你已经确认新的运行时环境已经安装在你的系统中,那么需要更改Docker的配置,以便Docker可以使用新的运行时环境。

编辑Docker的配置文件/etc/docker/daemon.json,添加以下内容:(没有该文件就新建一个)

{
  "default-runtime": "containerd",
  "runtimes": {
    "containerd": {
      "path": "/usr/bin/containerd"
    }
  }
}

保存文件并重启Docker:

systemctl restart docker

现在,Docker应该能够正常使用新的运行时环境了。

请注意,如果你使用的是其他运行时环境,例如cri-o等,你需要相应地更改default-runtimeruntimes的值。

希望这可以帮助你解决问题。如果你需要更多的帮助,请告诉我。

结尾

另附上centos升级docker教程
原文传送门文章来源地址https://www.toymoban.com/news/detail-728403.html

到了这里,关于Centos升级docker后启动容器报错“unknown or invalid runtime name”的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • docker执行报错:no such file or directory: unknown

    在linux下编译的golang程序放到docker的busybox镜像里无法执行,显示报错信息: exec: No such file or directory 在Docker化的今天, 我们经常需要静态编译一个Go程序,以便方便放在Docker容器中。 即使你没有引用其它的第三方包,只是在程序中使用了标准库 net ,你也会发现你编译后的程

    2024年02月07日
    浏览(54)
  • docker报错问题解决:Error Invalid or corrupt jarfile app.jar

    此时处在 /home/ubuntu/app 目录下,并且在该目录下有一个 jenkins-0.0.1-SNAPSHOT.jar。 我在 /home/ubuntu/app 目录下执行了 docker 容器运行命令: 但遗憾的是,当我执行命令后,并没有运行起来。 我们先查看一下日志: 提示错误信息: Error: Invalid or corrupt jarfile /app.jar 该错误表示的是

    2024年02月02日
    浏览(39)
  • Centos 升级Docker 至最新版本(镜像容器不丢失)

    卸载旧版本的Docker 安装需要的软件包 添加Docker的yum源 更新yum包 查看所有仓库中提供的Docker版本 安装新版本Docker 或安装指定版本 启动Docker 开启Docker开机自启 查看Docker版本 查看原有容器 如果启动容器报错 报错内容:Error response from daemon: unknown or invalid runtime name: docker-runc

    2024年02月04日
    浏览(42)
  • 启动Docker遇到 cgroups: cgroup mountpoint does not exist: unknown 报错处理

    Ubuntu 系统断电导致docker无法启动访问 Docker启动提示:Error response from daemon: cgroups: cgroup mountpoint does not exist: unknown 错误信息指出:cgroup的挂载点不存在 临时解决: 执行命令一:sudo mkdir /sys/fs/cgroup/systemd 执行命令二:sudo mount -t cgroup -o none,name=systemd cgroup /sys/fs/cgroup/system

    2024年02月12日
    浏览(53)
  • 【docker】docker启动报错no such file or directory

    根据自己构建的镜像启动docker容器日志打印出现,如下: 修改厚再次构建镜像即可

    2024年02月06日
    浏览(50)
  • Docker启动Centos7容器,并在容器中安装Docker,且开启SSH

    前言 此处我的需求是,在docker中启动centos7容器,并在容器中安装docker,支持ssh远程连接。如果你不需要在容器中安装docker,则可以只看第一部分的前两段,分别为: 启动centos7 容器 和 进入刚刚创建的容器 ,然后直接跳过安装docker阶段,直接去看 开启 ssh 服务 即可。 启动c

    2024年02月15日
    浏览(48)
  • docker启动容器失败,然后查看日志,docker logs查看容器出现报错:

    docker 启动 容器失败,然后 docker logs 查看容器出现报错: 在网上看到的 解决方案: 找到你日志文件目录: 删除或者备份一下就就可以看到日志了

    2024年02月03日
    浏览(44)
  • 解决:docker创建Redis容器成功,但无法启动Redis容器、也无报错提示

    1.修改redis.conf配置文件参数 daemonize 为 no : 由于创建容器实例时,会进行容器数据卷挂载,因此可以直接在外部宿主机里面修改,docker会自动同步该文件到redis容器对应目录里面 2.删除之前创建的redis容器实例 3.复杂使用run命令,再次重新创建redis容器实例。会进行容器数据卷

    2024年02月20日
    浏览(50)
  • windows docker 容器启动报错:Ports are not available

    docker 启动容器报错: (HTTP code 500) server error - Ports are not available: listen tcp 0.0.0.0:6379: bind: An attempt was made to access a socket in a way forbidden by its access permissions. 检查端口是否被其它程序占用: netstat -ano | findstr 6379 ,如果有需要自己处理一下,关掉冲突程序或改端口 如果本地端口没

    2024年02月09日
    浏览(40)
  • Docker容器 - 启动报错:No space left on device

    目录 运行 报错 解决问题 具体操作 重新运行 docker: Error response from daemon: mkdir /var/lib/docker/overlay2/82f185b561334827b34f78dd05dfd83b30b16e710fb27f88c09262bd94dd2fbc-init: no space left on device .  原因是磁盘空间不足,此时创建数据卷的时候docker会报错No space left on device。 首先来看一下磁盘的使用量

    2024年02月11日
    浏览(66)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包