zoukankan      html  css  js  c++  java
  • docker,containerd,runc,docker-shim之间的关系

    原文:https://blog.csdn.net/u013812710/article/details/79001463


    关于containerd
    关于containerd的一些详解介绍,请参考containerd的官网:(https://containerd.io/)

    关于docker
    docker本身而言包括了,docker client和dockerd(docker daemon),dockerd本身实属是对容器相关操作的api的最上层封装,
    直接面向操作用户。

    关于docker1.12.x
    该版本的docker由 docker-client ,dockerd,containerd,docker-shim,runc组成,现在来谈谈每个组件是用来干嘛的:

    dockerd
    dockerd本身实属是对容器相关操作的api的最上层封装,直接面向操作用户。

    containerd
    dockerd实际真实调用的还是containerd的api接口(rpc方式实现),containerd是dockerd和runc之间的一个中间交流组件。

    docker-shim
    docker-shim是一个真实运行的容器的真实垫片载体,每启动一个容器都会起一个新的docker-shim的一个进程,
    他直接通过指定的三个参数:容器id,boundle目录(containerd的对应某个容器生成的目录,一般位于:/var/run/docker/libcontainerd/containerID),
    运行是二进制(默认为runc)来调用runc的api创建一个容器(比如创建容器:最后拼装的命令如下:runc create 。。。。。)

    runc
    runc是一个命令行工具端,他根据oci(开放容器组织)的标准来创建和运行容器。

    他们之间的关系如下图:


    参考 : 

    docker进程模型,架构分析

  • 相关阅读:
    OAF_OAF控件系列9
    OAF_OAF控件系列8
    OAF_OAF控件系列7
    OAF_OAF控件系列5
    OAF_OAF控件系列4
    OAF_OAF控件系列3
    OAF_OAF控件系列3
    OAF_OAF控件系列2
    OAF_OAF控件系列1
    PLSQL_性能优化索引Index介绍(概念)
  • 原文地址:https://www.cnblogs.com/sunsky303/p/11356263.html
Copyright © 2011-2022 走看看