SRa*_*Raj 3 containers operating-system docker
如果我在我的 Ubuntu 机器上部署一个通过选择 Alpine Linux 作为基础镜像构建的镜像(它充当主机操作系统——安装了 Docker),这里是否有两个内核在运行——一个来自 Ubuntu,另一个来自 Alpine?我读到 Docker 容器将共享主机内核,所以我在这里有点困惑。
如果我登录到正在运行的容器并发出另一个命令,从主机操作系统的角度来看,这是否是另一个进程?或者这将是另一个线程?从客户操作系统的角度来看,我认为这将是两个独立的进程。
请澄清。
“容器”只是一个抽象的术语。它只是在主机(Ubuntu)上运行的另一个进程。由于您的来宾 (Alpine) 和主机 (Ubuntu) 都是基于 Linux 内核的操作系统。您在来宾操作系统中运行的任何命令或程序最终都将(由低级库)转换为系统调用,并提供给 Ubuntu 主机的内核。
“容器”只不过是主机内核对其应用一些通用策略的一组进程。因此,您在来宾操作系统中运行的任何命令或程序(如您所称)ping都会在主机上创建一个进程,该进程使用内核应用的与容器相同的策略。
| 归档时间: |
|
| 查看次数: |
503 次 |
| 最近记录: |