docker学习 容器的启动过程
2023-09-27 14:27:17 时间
这一节我们来稍微了解下docker原理性的东西
1
docker run -i -t ubuntu /bin/bash
输入上面这行命令,启动一个ubuntu容器时,到底发生了什么?
大致过程可以用下图描述:
首先系统要有一个docker daemon的后台进程在运行,当刚才这行命令敲下时,
1. docker client(即:docker终端命令行)会调用docker daemon请求启动一个容器,
2. docker daemon会向host os(即:linux)请求创建容器
3. linux会创建一个空的容器(可以简单理解为:一个未安装操作系统的裸机,只有虚拟出来的CPU、内存等硬件资源)
4. docker daemon请检查本机是否存在docker镜像文件(可以简单理解为操作系统安装光盘),如果有,则加载到容器中(即:光盘插入裸机,准备安装操作系统)
5. 将镜像文件加载到容器中(即:裸机上安装好了操作系统,不再是裸机状态)
最后,我们就得到了一个ubuntu的虚拟机,然后就可以进行各种操作了。
如果在第4步检查本机镜像文件时,发现文件不存在,则会到默认的docker镜像注册机构(即:docker hub网站)去联网下载,下载回来后,再进行装载到容器的动作,即下图所示
另外官网有一张图也很形象的描述了这个过程:
参考文章:
https://www.gitbook.com/book/joshhu/docker_theory_install/details
https://docs.docker.com/engine/introduction/understanding-docker/
相关文章
- 硬货 | 一文弄懂 Docker 容器技术与常用命令
- 如何在docker容器中使用GPU以及使用pytorch
- Docker学习笔记:容器自动重启--restart
- docker容器rename改名字
- Docker-端口映射与容器互联
- 自动化集成:Docker容器入门简介
- Docker 容器
- Docker最全教程之MySQL容器化 (二十四)
- Docker最全教程——MongoDB容器化(十二)
- Java 服务 Docker 容器化最佳实践
- 在 Docker 中运行 OpenOffice
- 优雅地实现安全的容器编排 - Docker Secrets
- Docker环境搭建与使用:运行一个Web应用示例
- Docker容器重启策略以及docker run的--restart选项详解
- 转 Docker 组件如何协作?- 每天5分钟玩转容器技术(8)
- Docker 构建脚本 Dockerfile 指令全解析
- docker tomcat 已主机名为日志输出路径
- 《Docker技术入门与实战》——3.4 删除镜像
- 【转载】 docker挂载volume的用户权限问题,理解docker容器的uid
- 浅析如何解决终端输入长命令不换行覆盖(Docker容器内输入长命令折行覆盖)问题:如何设置docker容器tty终端窗口大小-Linux stty命令设置串口终端行列数
- docker(4):coreos+docker+rancher真厉害
- Win10 Docker 安装使用
- docker安装/镜像/容器操作