如果我构建一个ubuntu(如16.04)基本映像,那么我将用该映像在Centos主机中构建一个容器。宿主内核会对容器产生一些影响吗?
答案 0 :(得分:0)
Docker容器在运行时会共享主机的内核。 docker build
在内部启动了一系列容器,因此,如果您的Dockerfile步骤之一执行的操作依赖于内核,则从理论上讲,如果映像是在不同的系统上构建的,则可以获得不同的结果。反过来,无论在何处构建映像,运行该映像时,它将使用当前主机的内核。
在实践中,具有深层内核级依赖性(例如,取决于所加载的特定模块)的程序很难在Docker下运行;您最终需要打破很多Docker提供的隔离条件才能完全运行该程序,通常在主机上运行这些程序通常更容易,更好。
另一面是,“常规”服务器类型的Docker映像(例如,在SO上无处不在的各种Python,Node和PHP应用程序)对内核一点都不敏感,并且只要您的内核足够新以能够成功运行Docker,就没关系了。