容器核心知识:容器是什么;容器解决的问题;Docker 架构(Docker 组件);组件协作过程; info、version
容器是什么
容器是一种轻量级、可移植、自包含的软件打包技术,使应用程序可以在几乎任何地方以相同的方式运行。
容器由两部分组成:
1.应用程序本身
2.依赖:比如应用程序需要的库或其他软件
容器与虚拟机的区别:
如图所示:
所有的容器共享同一个 Host OS,这使得容器在体积上要比虚拟机小很多。
启动容器不需要启动整个操作系统,所以容器部署和启动速度更快,开销更小,也更容易迁移。
容器解决的问题
容器使软件具备了超强的可移植能力。

docker特性;容器的优势 ================================================ docker特性: 打包对象:任何软件及其依赖 硬件依赖:容器无需修改便可运行在几乎所有的平台上 -- 虚拟机、物理机、公有云、私有云 隔离性:资源、网络、库都是隔离的,不会出现依赖问题 自动化:提供 run, start, stop 等标准化操作,非常适合自动化 高效性:轻量级,能够快速启动和迁移 职责分工:开发人员只需考虑怎么写代码;运维人员只需关心如何配置基础环境 容器的优势: 对于开发人员 - Build Once, Run Anywhere 对于运维人员 - Configure Once, Run Anything
Docker 架构(Docker 组件)
Docker 的核心组件包括:
1.Docker 客户端 - Client
2.Docker 服务器 - Docker daemon
3.Docker 镜像 - Image
4.Registry
5.Docker 容器 - Container
Docker 采用的是 Client/Server 架构。
Client:最常用的 Docker 客户端是 docker 命令。用户也可以通过 REST API 与服务器通信。
Server:Docker daemon 是服务器组件,以 Linux 后台服务的方式运行。
Docker daemon 运行在 Docker host 上,负责创建、运行、监控容器,构建、存储镜像。
Docker 镜像:可将 Docker 镜像看着只读模板,通过它可以创建 Docker 容器。
Registry :存放 Docker 镜像的仓库,Registry 分私有和公有两种。
Docker Hub(https://hub.docker.com/) 是默认的 Registry,由 Docker 公司维护,上面有数以万计的镜像,用户可以自由下载和使用。
Docker 容器: Docker 镜像的运行实例。
Docker 组件协作过程
docker run -d -p 80:80 httpd
容器启动过程如下:
1.Docker 客户端执行 docker run 命令。
2.Docker daemon 发现本地没有 httpd 镜像。
3.Docker daemon 从 Docker Hub 下载镜像。
4.下载完成,镜像 httpd 被保存到本地。
5.Docker daemon 启动容器。
==================================================
其他:
docker是基于linux container的
linux中称谓的container在内核层面由两个独立的机制保证,一个保证资源的隔离性,名为namespace;一个进行资源的控制,名为cgroup。
docker的各个功能对linux内核的版本要求不同,linux内核版本高于3.8.x,即可以支持全部功能
docker是一个client-server结构的系统,docker的守护进程运行在主机上,通过socket从客户端访问
docker的构成:docker仓库+docker自身组件
docker自身组件:docker client + docker server + docker 镜像
------------------------------
docker info #查看docker信息,需要关注的有version和Storage Driver
docker version
docker --help
docker [command] --help
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!