先简单说下理解:
我现在有一个电脑,系统上ubuntu系统。
-
你的电脑:大 Ubuntu 系统(完整功能)
-
先在大 Ubuntu 里安装 Docker工具
-
用 Docker pull 命令拉取小 Ubuntu 镜像(只有基础的功能的ubuntu)
-
用 Docker run 运行你拉取的镜像 → 变成容器(镜像运行起来就变成容器了)
-
在容器里改代码、改目录
-
用 Docker commit 打包成新镜像(把你正在运行的容器拍个快照,就变成新镜像了)
-
把镜像发给别人
-
别人电脑也要装 Docker,才能 run 你的镜像
镜像-->运行--容器-->修改容器中的内容--<>拍个快照--新镜像-->打包发给别人-->他通过docker运行--<容器...
镜像:只读模板,是容器的「爹」
容器:运行实例,是镜像的「崽」
Docker:工具平台,管着「爹」和「崽」
Docker 是容器管理工具,它利用底层的容器技术(命名空间、cgroups 等)让你轻松构建、运行和分发容器。你之前理解的"拉镜像、run 成容器、commit 成镜像"这些操作,正是 Docker 这个工具帮你完成的事情。
哪里理解不对,感谢批评指正。