这篇说一下run的流程和Docker原理。
1.docker run命令使用后,docker会在本机寻找目标镜像,接着判断本机是否有该镜像。
若有该镜像,则使用这个镜像运行。
若无该镜像,则去镜像仓库下载镜像,并判断是否可以找到镜像。若镜像仓库找不到,则返回错误,显示找不镜像。若找到镜像,则下载镜像到本地,接着返回之前步骤运行镜像。
2.Docker是怎么工作的?
Docker是一个cs(Client-Server)结构的系统,Docker的守护进程运行在主机上。通过Socket从(读/写-打开-关闭)客户端访问。DockerServer接收到Docker-Client的指令,便会执行这个指令。
3.Docker为什么比虚拟机快?
Docker比虚拟机的抽象层更少。可通过下图直观感受。(图片来源网上)
Docker利用的是宿主机的内核,虚拟机则是Guest os。故而新建一个容器时不需像虚拟机一样重新加载一个操作系统内核,省略了复杂的过程。