zoukankan      html  css  js  c++  java
  • Docker_简介(1)

    Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。

    Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。

    容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。

    Docker平台

    1. Docker提供了一个开发、打包、运行app的平台
    2. Docker把app和底层infrastructure隔离开来

    上面这两个特点是我们从整体上得到的。

    Docker Engine

    什么是Docker Engine, docker Engine是docker平台一个很重要的、核心组件。

     

    上面这个图,分成了三层。

    1)后台进程(dockerd)

    这个后台进程dockerd,有点相当于linux中的内核,我们通过查看进程可以找到这个dockerd进程是在运行的。

     

    Dockerd服务主要管理网络,数据存储,容器和镜像。

    2)REST API

    我们之所以能通过docker –v 查找出来docker的版本号,就是因为调用了接口。

    Docker就是采用了C/S架构,client端就是我们输入docker –v的机器,后台就是dockerd这个server,通过REST API来处理各种请求。例如容器和镜像的操作管理,这些docker命令其实就是一个个API。

    3)Client docker CLI

    CLI就是命令行接口,这个叫docker CLI, 就好像shell CLI, 之所以,我们在各种命令前面都加上docker,就是为了和其他CLI区分开来。例如和shell区分,有些公司的SDK也提供了类似的 CLI. 这个是一个客户端组件,提供用户输入命令并显示请求结果的一个组件。

    Docker 架构

    对着这张图,和你自己安装的centos 虚拟机,应该能明白一些了吧。

    我们虚拟机中图中的Client和DOCKER_HOST其实在一台机器上
    Registry就是docker镜像仓库中心,可以是hub.docker.com这个,也可以是自己公司自定义的镜像仓库。
    镜像可以制作好push到远程镜像仓库,也可以从远程仓库pull到本地机器。

    本文转载:https://blog.csdn.net/u011541946/article/details/86485409

  • 相关阅读:
    适配器
    装饰器
    getOwnPropertyDescriptor
    发布订阅
    策略模式
    window.requestAnimationFrame() 和 window.cancelAnimationFrame()
    L1-056 猜数字
    L1-055 谁是赢家
    L1-054 福到了
    L1-053 电子汪
  • 原文地址:https://www.cnblogs.com/testlearn/p/14581386.html
Copyright © 2011-2022 走看看