博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
docker学习(3) 容器的启动过程
阅读量:7078 次
发布时间:2019-06-28

本文共 731 字,大约阅读时间需要 2 分钟。

摘要:
这一节我们来稍微了解下docker原理性的东西 docker run -i -t ubuntu /bin/bash 输入上面这行命令,启动一个ubuntu容器时,到底发生了什么? 大致过程可以用下图描述: 首先系统要有一个docker daemon的后台进程在运行,当刚才这行命令敲下时, 1.

这一节我们来稍微了解下docker原理性的东西

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网站)去联网下载,下载回来后,再进行装载到容器的动作,即下图所示

另外官网有一张图也很形象的描述了这个过程:

参考文章:

转载地址:http://ldvml.baihongyu.com/

你可能感兴趣的文章
ups锂电池的优势
查看>>
零基础学习web开发技术总结分享
查看>>
东大金智ARM工控主板助力构建新型智慧城市
查看>>
电脑屏幕录制软件免费
查看>>
JavaScrip ajaxt和python flask通过json传递数据的方法
查看>>
关于程序员和***区别在哪里?
查看>>
用C语言简单实现小游戏三子棋
查看>>
java jmail
查看>>
关于上传MultipartFile file
查看>>
软件包的管理(rpm和yum)
查看>>
Android学习--14-天气练习
查看>>
新手入门应该搞清楚的几个有关网络的概念
查看>>
phoenixframework自动化测试平台对Safari浏览器的支持
查看>>
SqlServer系列笔记——索引
查看>>
Web开发(初级)- DOM
查看>>
Java位移运算
查看>>
20个Docker Command
查看>>
Hadoop单节点环境配置
查看>>
在Xcode中使用Git进行源码版本控制
查看>>
在Ubuntu上安装与配置ejabberd
查看>>