bha*_*tsb 14 linux kernel docker
如果我的程序依赖于内核库的某些功能,并且该函数又具有一系列依赖关系,那么docker如何保持小巧便携,而无需获取所有内核库的快照(并在函数而不是库中管理依赖性问题)水平)?换句话说,它是如何将内核库中的更改从一个版本隔离到另一个版本的,并且它是在库或函数的特殊情况下进行的吗?
另外如果我的应用程序有一个软件堆栈,其中例如一个功能是与内核库A的未来版本兼容而使用的内核库中的第二功能不再兼容.换一种说法:
函数1和2都依赖于并使用内核Lib A版本1.0中的函数
功能1与Lib一起使用1.1版功能2与Lib A版本1.1(功能2仍然需要Lib A版本1.0)中断
我对Docker了解不多,所以这是一个新手问题.
dus*_*uff 17
没有"内核库"这样的东西.与您描述的最接近的是:
libc,它是容器图像的一部分,因此不会改变.
Linux内核ABI,大部分是不变的.虽然偶尔会对内核ABI进行一些更改,但这是尽可能少地完成的 - 内核开发人员尽一切可能保持向后兼容性.在进行更改的地方,最常见的是与容器中运行的应用程序无关的组件(例如,音频/视频输出,动态设备管理等).
| 归档时间: |
|
| 查看次数: |
2527 次 |
| 最近记录: |