社区编辑申请
注册/登录
聊聊Docker基础:Docker运行原理
云计算 云原生
Docker基于客户端(容器)-服务器(Docker引擎)结构的系统,Docker的守护进程运行在宿主主机上,客户端(容器)通过Socket向Docker引擎发送相应的指令,Docker服务器就会执行相应的命令。

今天给大家继续分享Docker相关的知识,今天主要介绍Docker运行原理以及生命周期,希望对大家能有所帮助!

1.Docker底层运行原理

Docker基于客户端(容器)-服务器(Docker引擎)结构的系统,Docker的守护进程运行在宿主主机上,客户端(容器)通过Socket向Docker引擎发送相应的指令,Docker服务器就会执行相应的命令。       

图片

        Docker会以root权限运行它的守护进程,来处理普通Linux用户无法完成的操作(如挂载文件系统等操作)。

2.Docker执行run命令的流程

  • Dockers引擎会在本地查找镜像
  • 本地找到镜像 然后启动镜像
  • 本地没有找到镜像,然后根据Docker引擎配置的仓库地址,远程去查找镜像。
  • 远程查询到镜像,把镜像下载到本地,然后启动镜像
  • 远程查询到镜像,Docker返回错误,提示镜像远程未找到。
  • 运行中的镜像支持:停止、启动、重启、删除(先停止才可以删除)操作。


图片


3.Docker容器的生命周期

Docker容器主要有以下7个状态:

  • created:已创建,还未运行的容器
  • running:正在运行中的容器
  • restarting:容器正在重启中
  • removing:容器正在迁移中
  • paused:已暂停状态的容器
  • exited:停止状态的容器

dead:死亡,主要是操作系统出现异常或者断电关机等有可能引发dead状态,不是很常见。

暂停和停止状态的区别

docker pause 命令挂起指定容器中的所有进程

docker stop 容器内主进程会在指定时间内被杀死,默认为10s后。


图片


4、Docker操作容器命令示例

创建容器tomcat容器;

[root@ecs-337444 ~]# docker create --name tomcattest tomcat:8.5.38
1b6a0f79e3d3b030c3f5fc1b170f6205815c16a363cafc72f0b927e846f73cf5

docker ps -f status=created # 根据状态检索docker ps -a -f name=tomcattest #根据容器名检索;

[root@ecs-337444 ~]# docker ps -a -f name=tomcattest
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
54ae70aca0db tomcat:8.5.38 "catalina.sh run" 6 minutes ago Created tomcattest

图片

docker pause tomcattest #暂停容器docker unpause tomcattest  # 取消暂停;

图片

 docker stop tomcattest #停止容器;

图片

docker rm tomcattest #删除容器;

图片

责任编辑:武晓燕 来源: IT技术分享社区
相关推荐

2022-03-10 08:24:17

Docker容器SaaS

2022-02-18 08:54:21

2019-10-16 16:33:41

Docker架构语言

2018-06-05 08:58:38

Docker存储容器

2020-04-30 09:19:56

Docker容器虚拟机

2014-06-17 16:17:58

Docker 1.0Docker

2021-02-03 11:20:41

Docker架构容器

2018-04-18 07:01:59

2015-01-14 14:27:18

2021-06-11 07:49:01

2020-11-05 11:14:29

2018-07-04 09:42:19

2019-07-11 15:25:02

架构运维技术

2018-10-25 09:37:02

同话题下的热门内容

一篇文章学会什么是KubernetesKubernetes 可观测性:利用四个开源工具风险日益严峻,容器云平台如何做好安全隔离?备份和恢复Kubernetes集群中的Etcd数据为什么应用程序依赖关系映射对于云迁移至关重要对Kubernetes替代方案的需求服务网格到底能做哪些事?一文弄懂Kubernetes集群管理

编辑推荐

Service Mesh真的是云原生应用的绝配吗云原生桌面:虚拟桌面的解构与重新定义解密云原生---看企业云的未来云原生技术及其未来发展趋势展望如何评估云原生NFV中的容器化VNF部署
我收藏的内容
点赞
收藏

51CTO技术栈公众号