浅谈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,用来存储和分享自己的镜像

相关推荐
考虑考虑35 分钟前
cmd局部设置java变量
运维·后端·自动化运维
生活爱好者!1 小时前
哇!影视新玩法!docker部署NEOWATCH NAS
运维·docker·容器
一技安身2 小时前
【信创】银河麒麟V10、统信UOS解压7Z文件
linux·运维·服务器
迷途呀2 小时前
CI/CD 自动化部署实践:让代码提交后自动上线
linux·运维·nginx·ci/cd·自动化
闲云自留地3 小时前
动手玩 Nova:Hypervisor、主机聚合、可用分区、虚拟机生命周期实操
运维·架构·openstack
binqian3 小时前
【linux】OpenSSH升级文档
linux·运维·网络
吴声子夜歌3 小时前
Shell编程——if条件语句
linux·运维·shell
和裕3 小时前
蜂窝板 vs 七层瓦楞重型纸箱:大件工业设备运输性能与成本全对比
大数据·运维·网络·人工智能·算法
Dawn-bit4 小时前
Linux 运维基础扩展:跳板机、堡垒机与物理服务器全流程
linux·运维·服务器·云计算·运维开发
新时代牛马4 小时前
Linux 定时任务:crontab、anacron 与systemd timer
linux·运维·服务器