加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

linux – 对于Docker,当主机内核更新时,应用程序是否会停止工作

发布时间:2020-12-14 00:53:56 所属栏目:Linux 来源:网络整理
导读:我是一个90%的 Windows家伙,但我喜欢ubuntu并将其用于ROS,opencv或python等. 对于像ROS这样的复杂应用程序,每隔几个月推出一个新版本,Docker似乎绝对是理想的并排运行多个版本. 我问的是关于内核的问题.我不知道内核是如何工作的,也不知道它的更新频率.但我
我是一个90%的 Windows家伙,但我喜欢ubuntu并将其用于ROS,opencv或python等.

对于像ROS这样的复杂应用程序,每隔几个月推出一个新版本,Docker似乎绝对是理想的并排运行多个版本.

我问的是关于内核的问题.我不知道内核是如何工作的,也不知道它的更新频率.但我想知道如果我在主机上获得内核更新,我的docker镜像是否会停止运行.

所以基本上,我熟悉一个虚拟机,只要有一个x86 CPU,RAM和硬盘驱动器,你的虚拟机就可以运行,而不会受到主机操作系统更新的影响.

但是对于Docker,我应该担心在Linux内核经过一些更新的几年后,我的Docker镜像/容器将不再起作用了吗?如果在具有较新内核的主机上的Docker容器中重新编译一些代码,那么该映像/容器是否会在具有较旧内核的主机上运行?

解决方法

in a couple years when the linux kernel has gone through some updates,
my Docker images/containers won’t work anymore?

Linux作为内核,永远不会破坏用户空间应用程序.
多年来一直如此,他们没有计划改变这种情况.

事实上,大多数应用程序几乎从不与内核“交谈”,也从不与内核链接,除非他们需要访问真正的低级内容.

相反,应用程序使用libc,它提供所有基本系统调用和函数(参见this link).

如果对libc进行重大更新,则该库不会在主机和容器之间共享,无论如何都会嵌入到容器中.

这意味着出于安全原因,您可以(并且应该)应用主机上可用的任何内核更新.您还应确保您的容器包保持最新.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读