容器化技术——Docker专题一 | 基础概念

本文章是在网易云课堂的课程学习中编写,部分图片从网易云课堂ppt引用

容器化专题

导学:

偏重于理解和使用,以核心概念为主,跟着操作为辅,学会查阅官方文档,理解容器化技术在项目中的应用

重点:

1、要理解docker和k8s的使用,知道有哪些功能,知道如何使用

2、了解容器化带来的好处,知道容器化技术具备的功能

难点:

1、要了解docker和k8s的架构,理解容器编排的概念

2、了解操作系统、网络的概念


首先学习Docker

分为六大模块进行学习,列表如下:

1、Docker基础概念

2、Docker安装、卸载和加速

3、Docker镜像、容器的常用命令

4、利用 Docker file 构建私有镜像

5、运行Java程序

6、搭建Docker私有仓库

为避免篇幅过长,分成六篇文章来记录。本文章介绍的是基础概念模块

一、Docker基础概念

【Docker介绍】

1、Docker是用Go语言进行开发实现,基于Linux内核的cgroup、namespace以及 AUFS类的Union FS等技术,对进程进行封装隔离,属于操作系统层面的虚拟化技术。由于隔离的进程独立于宿主和其它的隔离的进程,因此也称其为容器

2、Docker在容器的基础上,进行了进一步的封装,从文件系统、网络互联到进程隔离等等,极大的简化了容器的创建和维护。使得Docker技术比虚拟机技术更为轻便、快捷

【Docker和传统虚拟机的对比】

传统虚拟机技术:虚拟出一套硬件后,在其上运行一个完整操作系统,在该系统上再运行所需应用进程;

Docker:容器内的应用进程直接运行于宿主的内核,容器内没有自己的内核,而且也没有进行硬件虚拟。因此容器要比传统虚拟机更为轻便。

Docker与传统虚拟机对比总结

【为什么要使用Docker】

Docker优势:更高效地利用系统资源、更快速的启动时间、一致的运行环境、持续交付和部署部署、更轻松的迁移、更轻松的维护和扩展。

【Docker架构】

1、Docker主要分为三大块:客户端、主机、仓库

2、Docker工作模式:使用客户端-服务器(C/S)架构模式,使用远程API来管理和创建Docker容器。

Docker架构模式

相关概念介绍:

1)Docker镜像:是用于创建Docker容器的模板

2)Docker容器:是独立运行的一个或一组应用

3)Docker客户端:通过命令行或其他工具,使用Docker的API与Docker的守护进程进行通信

4)Docker主机:可以是物理机或虚拟机,用于执行守护进程的仓库

5)Docker仓库:用于保存镜像,可以理解为代码控制中的代码仓库,比如GitHub

6)Docker machine:是一个简化的docker安装的命令行工具,通过简单的命令行即可在相应平台上安装Docker

【Docker基本概念】

理解了Docker的下面三个基本概念,就理解了Docke的整个生命周期

1、镜像(Image)

Docker镜像相当于一个特殊的文件系统

以操作系统为例,操作系统分为内核和用户空间。对于Linux而言,内核启动后,会挂载root文件系统为其提供用户空间支持。而Docker镜像(Image) , 就相当于是一个root文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的配置参数(如匿名卷、环境变量、用户等)。镜像不包含任何动态数据,其内容在构建之后也不会被改变。

Docker镜像分层存储

Docker是分层存储的架构,使得镜像的复用、定制变得更为容易。镜像是一个虚拟的概念,由一组多层的文件系统组成。镜像构建时,是一层层地构建,每一层构建完不会再改变,所以在构建每一层时尽量只包含该层需要添加的东西。还可以用之前构建好的镜像作为基础层,进一步添加新的层,定制自己所需的内容,构建新的镜像。

2、容器(Container)

容器和镜像的关系

类似于Java中的类和实例,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。

容器存储层

是为容器运行时读写而准备的存储层。容器也是分层存储的,每一个容器运行时,是以镜像为基础层,在其上面创建一个当前容器的存储层,它的生命周期和容器一样,所以任何保存在容器存储层的信息都会随容器删除而丢失。

**注意:容器不应该向存储层内写入任何数据,容器存储层要保持无状态化。所有文件写入操作,都应使用Volume数据卷,或绑定宿主目录,这样读写会跳过容器存储层,直接对宿主(或网络存储)发生读写,性能和稳定性更高。

数据卷

生命周期独立于容器,容器消亡,数据卷不会消亡。使用数据卷后,容器删除或重新运行后,数据不会丢失。

3、仓库(Repository)

Docker Registry

Docker Registry是集中存储、分发镜像的服务,使得镜像能够在其他服务器上使用。

一个Docker Registry可以包含多个仓库(Repository),每个仓库可以包含多个标签,每个标签对应一个镜像。

通常一个仓库会包含同一个软件不同版本的镜像,标签就常用于对应该软件的各个版本。我们可以通过<仓库名>:<标签>的格式来指定具体是该软件哪个版本的镜像。如果不给出标签,将以最新的(latest)作为默认标签。

举个栗子:以centos镜像为例,centos 是仓库的名字,其内包含有不同的版本标签,如,6.9、7.5。我们可以通过centos:6.9,或者centos:7.5来具体指定所需哪个版本的镜像。如果忽略了标签,比如centos,那将视为centos:latest。

Docker仓库

1)Docker Registry公开仓库

常用的Registry是官方的Docker Hub,这也是默认的Registry。除此以外,还有CoreOS的Quay.io,CoreOS相关的镜像存储在这里。另外,还有Google 的Google Container Registry, Kubernetes 的镜像使用的就是这个服务。

加速器:国内的一些云服务商提供的针对Docker Hub的镜像服务。常见的有阿里云加速器、DaoCloud 加速器等。使用加速器会直接从国内的地址下载Docker Hub的镜像,比直接从Docker Hub下载速度会提高很多。

国内也有一些云服务商提供类似于Docker Hub的公开服务。比如网易云镜像服务、DaoCloud镜像市场、阿里云镜像库等。

2)Docker Registry私有仓库

用户可以在本地搭建私有Docker Registry。Docker 官方提供了Docker Registry镜像,可以直接使用做为私有Registry服务。

开源的Docker Registry镜像只提供了Docker Registry API的服务端实现,足以支持docker命令,不影响使用。但不包含图形界面,以及镜像维护、用户管理、访问控制等高级功能。在官方的商业化版本Docker Trusted Registry中,提供了这些高级功能。

除了官方的Docker Registry外,还有第三方软件实现了Docker Registry API,甚至提供了用户界面以及一些高级功能。比如,VMWare HarborSonatype Nexus

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,189评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,577评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,857评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,703评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,705评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,620评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,995评论 3 396
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,656评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,898评论 1 298
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,639评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,720评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,395评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,982评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,953评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,195评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,907评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,472评论 2 342

推荐阅读更多精彩内容