zoukankan      html  css  js  c++  java
  • docker基础-基本概念

    1.镜像

    操作系统 = 内核 + 用户空间

    对于linux而言,内核启动后,会挂载root文件系统为其提供用户空间支持,而docker镜像,就相当于root文件系统。

    docker镜像是一个特殊的文件系统,除了提供容器运行时所需的程序,库,资源,配置等文件外,还包含了一些为运行时准备的一些配置参数(如匿名卷,环境变量,用户等),镜像不包含任何静态数据,其内容在构建之后也不会改变。

    2.分层存储

    docker采用了Union FS的技术,实现分层存储的技术,镜像并非一个文件产生,而是由一组镜像产生的,或者说是由多层文件系统联合组成。

    镜像构建时,会一层一层的构建,前一层是后一层的基础,每一层构建完就不会再次改变,后一层的任何改变只会发生在当层,例如:删除前一层文件的操作,实际不是真的删除前一层的文件,而是删除前一层文件在当前层的标记。

    优点:使镜像的复用,定制更容易。

    3.容器

    容器和镜像的关系,就像类和实例的关系,一个是静态一个是动态,容器运行于自己独有的命名空间,所以容器可以拥有自己的root文件系统,自己的网络配置,自己的进程空间等。

    但是容器里的内存空间会随着容器的删除而删除,所以不能把资料存储在容器中,而应该使用数据卷或者绑定宿主目录,直接对宿主的内存空间进行操作。

    4.仓库

    docker registry是一个用于集中存储,分发镜像的服务,一个docker registry中可以包含多个仓库,每个仓库可以有多个标签,每个标签对应一个镜像。

    例如:

    ubuntu:16.04 前者为镜像名称,后者为版本号。

    jwilder/nginx-proxy 前者为作者,后者为镜像名称。

    5.docker registry公开服务

    是开放给用户使用,允许用户管理镜像的registry服务。一般这种仓库是允许用户上传,下载,并提供收费服务用户管理的私有镜像。

    6.私有docker registry

    用户搭建在本地的私有仓库,但是只有命令行形式,如果想要图形界面,镜像维护和用户管理等,那么就需要用到Docker Trusted Registry,Harbor或者Sonatype Nexus。

  • 相关阅读:
    pwdLastSet AD
    快递条形码类型
    Sharepoint 应用程序池自动停止
    Visual Studio 2015安装后“无法启动iis express web 服务器”
    Knockout自定义绑定数据逻辑
    Knockout基本绑定数据
    TableAttribute同时存在于
    微服务架构下的鉴权,怎么做更优雅?
    使用 Yopto 插件给商品添加评论
    Docker 基本概念
  • 原文地址:https://www.cnblogs.com/freeht/p/13167597.html
Copyright © 2011-2022 走看看