Docker概述
本文最后更新于 2024年10月29日
Docker是一个开源的平台,旨在让应用程序更简单地创建、部署和运行。它通过容器技术,实现应用程序及其依赖环境的打包,使得软件可以带着环境安装,不受具体操作系统环境的限制。容器类似于轻量级的虚拟机,但共享宿主机的操作系统资源,启动速度更快,占用资源更少。
Docker的架构和运行流程
从其架构和运行流程快来看,Docker是一个C/S模式的架构,后端是一个松耦合架构,众多模块各司其职。
docker的基本运行流程为:
- 用户使用Docker Client与Docker Daemon建立通信,并发送请求给后者。
- Docker Daemon作为Docker架构中的主体部分,首先提供Docker Server的功能使其可以接受Docker Client的请求。
- Docker Engine执行Docker内部的一些列工作,每一项工作都是以一个Job的形式存在。
- Job在运行过程中,当需要镜像时,从Docker Registry中下载镜像,并通过镜像管理驱动Graph driver将下载镜像以graph的形式存储。
- 当需要为Docker创建网络环境时,通过网络管理驱动Network driver创建并配置Docker容器网络环境。
- 当需要限制Docker容器运行资源或执行用户指令操作时,则通过Exec driver来完成。
- Libcontainer是一项独立的容器管理包,Network driver以及Exec driver都是通过Libcontainer来实现具体对容器进行的操作。
Docker概述
https://blog.liuzijian.com/post/224005a0-12bb-46a4-ad3e-bd4aebb4571c.html