您的位置:首页 > 运维架构 > Docker

Docker的基本概念

2017-09-29 12:51 405 查看
  不多说,直接上干货!

[b]Docker的基本概念[/b]

  1、Registry
  Registry是一个服务,它负责管理一个或多个Repository(仓库),而Repository还包含公共仓库(Public Repository)和私有仓库(Private Repository)。默认的Registry是Docker Hub,它管理了按照不同用途分类的很多公共仓库,任何人都可以到Docker Hub上查找自己需要的Image,或者可以使用docker search命令来搜索对应Image。

  例如我们查询关键词hadoop,示例命令如下所示:

docker search hadoop


  查询结果如下所示:

NAME                             DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
sequenceiq/hadoop-docker         An easy way to try Hadoop                       428                  [OK]
sequenceiq/hadoop-ubuntu         An easy way to try Hadoop on Ubuntu             40                   [OK]
uhopper/hadoop                   Base Hadoop image with dynamic configurati...   16                   [OK]
ruo91/hadoop                     Apache hadoop 2.x - Pseudo-Distributed Mode     12                   [OK]
harisekhon/hadoop                Apache Hadoop (HDFS + Yarn, tags 2.5 - 2.7)     8                    [OK]
gelog/hadoop                     Use at your own risk.                           5                    [OK]
athlinks/hadoop                  Distributed Highly Available Hadoop Cluste...   3                    [OK]
dockmob/hadoop                   Docker images for Apache Hadoop (YARN, HDF...   3                    [OK]
uhopper/hadoop-resourcemanager   Hadoop resourcemanager                          3                    [OK]
harisekhon/hadoop-dev            Apache Hadoop (HDFS + Yarn) + Dev Tools + ...   3                    [OK]
izone/hadoop                     Hadoop 2.7.3 Ecosystem fully distributed, ...   3                    [OK]
uhopper/hadoop-namenode          Hadoop namenode                                 2                    [OK]
singularities/hadoop             Apache Hadoop                                   2                    [OK]
uhopper/hadoop-datanode          Hadoop datanode                                 2                    [OK]
uhopper/hadoop-nodemanager       Hadoop nodemanager                              2                    [OK]
lewuathe/hadoop-master           Multiple node hadoop cluster on Docker.         2                    [OK]
robingu/hadoop                   hadoop 2.7                                      1                    [OK]
mcapitanio/hadoop                Docker image running Hadoop in psedo-distr...   1                    [OK]
takaomag/hadoop                  docker image of archlinux (hadoop)              1                    [OK]
ymian/hadoop                     hadoop                                          0                    [OK]
2breakfast/hadoop                hadoop in docker                                0                    [OK]
ading1977/hadoop                 Docker image for multi-node hadoop cluster.     0                    [OK]
meteogroup/hadoop                Apache™ Hadoop® in a docker image.              0                    [OK]
hegand/hadoop-base               Hadoop base docker image                        0                    [OK]
elek/hadoop                      Base image for hadoop components (yarn/hdfs)    0                    [OK]


  上面可以看到,与hadoop相关的Image都被列出来了,可以根据自己的需要选择对应的Image下载并构建应用

  2、Image
  Docker Image是Docker Container的基础,一个Image是对一个Root文件系统的执行变更操作的有序集合,也包括在运行时一个Container内部需要执行的参数的变化。
  一个Image是静态的、无状态的,它具有不变性。如果想要修改一个Image,实际是重新创建了新的Image,在原来Image基础上修改后的一个副本。所以,往往我们制作一个Image的时候,可以基于已经存在的Image来构建新的的Image,然后Push到Repository中。

  3、Repository
  一个Repository是Docker Image的集合,它可以被Push到Registry而被共享,在Docker Hub就可以看到很多组织或个人贡献的Image,供大家共享。当然,你也可以将自己构建的Image Push到私有的Repository中。在Repository中不同的Image是通过tag来识别的,例如latest 、5.5.0等等。

  4、Container
  Container是一个Docker Image的运行时实例,从一个Image可以创建多个包含该应用的Container。一个Container包含如下几个部分:

一个Docker Image

执行环境

一个标准指令的集合
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: