浅谈Docker原理

文章目录

前言

Docker 是一种容器化技术,它通过利用 Linux 内核提供的虚拟化技术和隔离机制,实现了更轻量级的应用程序虚拟化方案

命名空间

Docker 使用了 Linux 的命名空间特性,包括 mount、PID、network 等,这些命名空间将不同的资源隔离开来,使得容器内的进程看起来像在独立的环境中运行,从而降低了容器间的干扰。

控制组

Docker 利用 Linux 的控制组(cgroup),可以对容器内的资源进行限制和管理,比如 CPU、内存、磁盘等。通过使用 cgroup,Docker 可以为容器分配适量的资源,并限制其使用的资源量,保障容器的性能和稳定性

分层存储

Docker 使用分层存储的方式来管理镜像。镜像可以通过多个只读层叠加在一起,形成一个可读写的容器层。这种分层存储的方式,使得镜像可以共享公共的基础层,减少了占用存储空间的同时也提高了镜像的复用性和下载速度

镜像和容器

Docker 镜像是一个只读的模板,包含了运行应用程序所需的文件系统和软件。容器是基于镜像创建的一个运行实例,它可以被启动、停止、删除和暂停。一个镜像可以同时创建多个容器运行

Docker Engine

Docker Engine 是 Docker 的核心组件,负责管理容器的生命周期,包括创建、运行、停止和删除容器。它也负责监控容器的状态,并提供了一系列的命令行工具和 API,用于与 Docker 进行交互

Docker Registry

Docker Registry 是一个集中存储和分发镜像的服务。它可以用来存储自定义的镜像,也可以从公共的 Docker Hub 上下载镜像。Docker Registry 允许用户创建私有的 Registry,用来存储和分享自己的镜像

相关推荐
Lam㊣2 分钟前
Centos 7 系统docker:更换镜像源
linux·docker·centos
FL162386312912 分钟前
win11+WSL+Ubuntu-xrdp+远程桌面闪退+黑屏闪退解决
linux·运维·ubuntu
挖土机_00839 分钟前
Kubernetes 1.35 原地扩容(In-Place Pod Resize)完整解析:机制、差异与实战示例
docker·kubernetes
AOwhisky1 小时前
Linux逻辑卷管理:从“固定隔间”到“弹性存储池”的智慧
linux·运维·服务器
05大叔2 小时前
大事件Day02
运维·服务器
左直拳2 小时前
将c++程序部署到docker
开发语言·c++·docker
五仁火烧2 小时前
Vue3 项目的默认端口行为
服务器·vue.js·nginx·容器·vue
C Yu小白2 小时前
Linux系统调用与文件操作详解
linux·运维·服务器
ZFB00012 小时前
【麒麟桌面系统】V10-SP1 2503 系统知识——常见用户组简介
linux·运维·kylin
acrelgxy2 小时前
告别被动抢修与盲目巡检!安科瑞运维云平台,让电力系统实现预测性守护。
运维·电力监控系统·智能电力仪表