gpt4 book ai didi

docker - 如何以及为什么将IS用作Docker上的容器

转载 作者:行者123 更新时间:2023-12-02 20:45:47 26 4
gpt4 key购买 nike

我刚刚开始学习 dockers 容器。对我来说,我可以将应用程序及其所有依赖项容器化,然后将其部署在 docker引擎上并运行。但是我很困惑如何将像 UBUNTU 这样的操作系统作为容器部署在docker上?因为我了解的基本概念是,Docker容器没有应用程序或最小操作系统依赖项。那么为什么OS也被用作容器?操作系统是否被视为docker上的应用程序?还是它们有其​​他用途,它们只是为应用程序提供最小的依赖关系?如果有人可以解释这个概念,那就太好了。

最佳答案

Linux系统包含Linux内核以及在其之上的一组程序/实用程序,它们定义了系统的整体行为和外观。与虚拟化技术相比,使Docker轻巧的原因是与主机OS共享内核。但并非其余程序。

您可能不想在纯内核上部署您的应用程序-您需要POSIX api以及shell和包管理器。所有这些东西都随Ubuntu或您喜欢的任何发行版一起提供。因此,将您的应用容器化,您选择最合适的Linux发行版并使用适当的基本docker镜像。通常,您会考虑大小,默认程序包管理器和滚动/稳定部署规则。

实际上,您可以使用 LFS 指令使用FROM scratch或最少的代码来创建图像,但是我怀疑是否值得花时间。

因此,回到您的问题:

But I am confused how OS such as UBUNTU is being deployed as container on docker?



刚挂载为tar.gz rootfs

Then why OS is also used as containers?



让您拥有包管理器,glibc和其他功能。您喜欢 RUN apt-get install -y whatever,不是吗?

Are the OS being treated as application on docker?



不,Docker中没有应用程序概念。只有主进程才能使容器保持 Activity 状态。并且操作系统不被视为主要过程。

关于docker - 如何以及为什么将IS用作Docker上的容器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54765434/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com