linux – 如果内核库改变,Docker如何允许便携式容器

前端之家收集整理的这篇文章主要介绍了linux – 如果内核库改变,Docker如何允许便携式容器前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

如果我的程序依赖于内核库的某些功能,而这个功能又有一连串的依赖关系,那么Doc​​ker如何保持小巧便携,而不需要对所有内核库进行快照(并在一个函数而不是库中管理依赖关系问题)水平)?换句话说,它如何将内核库的变化从一个版本隔离到下一个版本,它在库或函数的大小方面如何?

另外,如果我的应用程序有一个软件栈,例如一个函数与未来版本的内核库A兼容,而使用内核库A的第二个函数不再兼容.换一种说法:

功能1和2都依赖于内核Lib A版本1.0中的功能并与其兼容

功能1适用于Lib A版本1.1
功能2与Lib A版本1.1(功能2仍然需要Lib A版本1.0)

我对Docker不太了解,所以这是一个新手的问​​题.

最佳答案
没有像“内核库”这样的东西.最接近你所描述的东西是:

> libc,它是容器图像的一部分,因此不会改变.
> Linux内核ABI,大多是常数.虽然有时会对内核ABI进行一些更改,但这尽可能少地进行 – 内核开发人员尽一切可能保持向后兼容性.在进行更改的情况下,通常在与容器中运行的应用程序(例如音频/视频输出,动态设备管理等)无关的组件中.

猜你在找的Docker相关文章