学会这款 🔥全新设计的 Java 脚手架 ,从此面试不再怕!
Docker 的底层实现原理
Docker 是一种容器服务,为了方便理解你可以认为他是一个轻量级的虚拟机。通过 Docker 创建的容器,在宿主机上共享硬件资源和底层系统与接口,同时又能提供互相隔离的应用程序环境。
这是怎么做到的?由于 Linux 一切资源皆文件,所以只要简单的使用命名空间即可实现进程之间的隔离。
就像下面这个树形菜单,每个进程在自己的「文件夹/命名空间」中运作,互不干扰。
├── proc/
│ ├── 1/ # 系统初始化进程(主机)
│ │ ├── cmdline
│ │ └── status
│ ├── 2/ # 内核线程(主机)
│ │ ├── cmdline
│ │ └── status
│ ├──