文档首页> 技术教程> Docker 是什么:用拉镜像的方式建立直觉

Docker 是什么:用拉镜像的方式建立直觉

发布时间:2026-08-05 22:07        更新时间:2026-08-06 11:26
把一个应用连同它的运行环境整体打包,到哪台机器都能原样跑起来——容器技术解决的就是这件事。Docker 是目前最常用的容器工具,理解它,可以从"拉镜像"这个动作开始。 容器和虚拟机差在哪 虚拟机模拟一整台电脑,每个都要装完整操作系统,镜像动辄几个 GB,启动按分钟计。容器共享宿主机的系统内核,只打包应用和依赖,通常几十到几百 MB,启动按秒计。一台 4 核 8G 的云服务器跑十几个容器很轻松,跑十几个虚拟机就吃力。代价是容器只能运行与宿主机内核兼容的系统,Linux 容器没法直接跑在 Windows 内核上。 镜像是分层的 镜像像一个逐层叠加的只读模板:底层是系统基础层,往上叠运行环境,最上面叠应用。分层带来复用:同一台机器上多个镜像共享相同的基础层,磁盘占用和下载时间都省。容器启动时在镜像顶部加一层可写层,删容器就删这层数据,镜像本体不动。数据库数据为什么必须放容器外的卷里,答案就在这里。分层结构还带来增量更新,改一行代码只推新层,升级更快。 三个命令建立直觉 docker pull nginx:把 Nginx 镜像从仓库拉到本地;docker run -d -p 80:80 nginx:基于镜像启动容器,把 80 端口映射出来,浏览器访问服务器 IP 就能看到欢迎页;docker ps:查看正在运行的容器。三条跑完,"镜像—容器—端口"三者的关系就直观了,容器不是玄学,是打包与隔离两件事。 什么时候用得上 同一类服务要部署多份、依赖环境复杂怕装错、希望本地与服务器环境一致的,都是容器的适用场景。单个静态网站用不用容器差别不大,别为了容器而容器。 概念文章读十篇,不如在测试机上把上面三条命令跑一遍。跑完再看 Docker 相关的教程,理解速度完全不同。