Docker 三要素 | 学习笔记

简介: 快速学习 Docker 三要素

开发者学堂课程【Docker 快速入门:Docker 三要素】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/616/detail/9389


Docker 三要素

Docker 安装

1、前提条件

① CentOS Docker 安装

Docker 支持以下的 CentOS 版本:

CentOS 7(64-bit)

CentOS6.5(64-bit) 或更高的版本

②前提条件

目前,CentOs 仅发行版本中的内核支持 Docker。

Docker 运行在 CentOS7 上,要求系统为 64 位、系统内核版本为 3.10 以上。

Docker 运行在 CentOS-6.5 或更高的版本的 CentOS 上,要求系统为 64 位、系统内核版本为 2.6.32-431 或者更高版本。

③查看自己的内核

uname 命令用于打印当前系统相关信息(内核版本号、硬件架构、主机名称和操作系统类型等)。

[root@atquiqu sysconfia]#uname-r

2.6.32-642.el6.x86_64

root@atguigu sysconfig]#

④查看已安装的 CentOS 版本信息

[root@atguigu sysconfiq]# lsb_release-a

LSBVersion: :base-4.0-amd64:base-4.0-noarch:core-4.0-am

d64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noa

rch:printing-4.0-amd64:printing-4.0-noarch

Distributor ID: Centos

Descrintion:  Centos release 68(Final)

Release:     6.8

Codename :  Final

[root@atguigu sysconfia]#

2、Docker 的基本组成

①镜像(image)

②容器(container)

③仓库(repository)

④总结

Docker 构架图

image.png

首先此图为分层的概念,Client 为我们的连接客户端(pull 为“拉,连接”的意思),对 Git 操作的命令终端。中间部分为主机,Registry 为注册仓库。

注册仓库的概念:

需要运行什么,运维工程师不再自己安装,就会去仓库上,比如要装 NGNX,从远程仓库上拉下来一个,拉到本地以后,这就是一个镜像,那么这个镜像就是一个集装箱,某一个镜像的实例就是一个容器。

放在容器里面,Docker 各自独立的集装箱就是运行的一个个环境,鲸鱼背上这么多独立集装箱,来完成我们的协作和工作。

image.png

此图为 person 的构造方法,三个不同的实例就是三个不同的容器,但均来自于同一个模板,这个模板就是类(镜像)。

①Docker 镜像( Image )就是一个只读的模板。镜像可以用来创建 Docker 容器,一个镜像可以创建很多容器。此图为 person 的构造方法,三个不同的实例就是三个不同的容器,但均来自于同一个模板,这个模板就是类(镜像)。即镜像就是类,容器就是一个个实例对象。

Docker

面向对象

容器

对象

镜像

② Docker 利用容器( Container ) 独立运行的一个或一组应用。容器是用镜像创建的运行实例。

它可以被启动、开始、停止、删除。每个容器都是相互隔离的、保证安全的平台。

可以把容器看做是一个简易版的 Linux 环境(包括 root 用户权限、进程空间、用户空间和网络空间等)和运行在其中的应用程序。

容器的定义和镜像几乎一模一样,也是一堆层的统一视角,唯一区别在于容器的最上面那一层是可读可写的。

③仓库( Repository )是集中存放镜像文件的场所。

仓库( Repository )和仓库注册服务器( Registry )是有区别的。仓库注册服务器上往往存放着多个仓库,每个仓库中又包含了多个镜像,每个镜像有不同的标签(tag)。

仓库分为公开仓库( Public )和私有仓库 ( Private ) 两种形式。最大的公开仓库是 Docker Hub(https://hub.docker.com/),

存放了数量庞大的镜像供用户下载。国内的公开仓库包括阿里云、网易云等。

④总结:需要正确的理解仓储/镜像/容器这几个概念

Docker 本身是一个容器运行载体或称之为管理引擎。我们把应用程序和配置依赖打包好形成一个可交付的运行环境,这个打包好的运行环境就似乎 image 镜像文件。只有通过这个镜像文件才能生成 Docker 容器。

Image 文件可以看作是容器的模板。Docker 根据 image 文件生成容器的实例。同一个 image 文件,可以生成多个同时运行的容器实例。以前运维工程师要十台机器安装十次。现在只需要安装 Docker,Docker 上面运行一个镜像,镜像就是复制一份就完成工作。

image 文件生成的容器实例,本身也是一个文件,称为镜像文件。

一个容器运行一种服务,当我们需要的时候,就可以通过 docker 客户端创建一个对应的运行实例,也就是我们的容器。

至于仓储,就是放了一堆镜像的地方,我们可以把镜像发布到仓储中,需要的时候从仓储中拉下来就可以了。

相关文章
|
3月前
|
Kubernetes Ubuntu Linux
docker学习笔记
docker学习笔记
52 0
|
26天前
|
安全 网络安全 开发者
Docker学习笔记(一):Docker命令总结
本文介绍了Docker的基本概念、优点以及常用命令。Docker是一个开源的应用容器引擎,它通过容器打包应用程序及其依赖项,实现快速部署和迁移。主要优点包括轻量级、可移植性、易于管理、安全性和开源性。文章还区分了镜像和容器的概念,并提供了构建镜像、查看容器、运行容器、停止和删除容器等常用Docker命令的示例。
121 0
|
2月前
|
Docker Windows Python
Windows-Docker学习笔记(一)
本文介绍了Windows环境下Docker的安装与使用方法。首先通过链接下载Windows版本的Docker,然后按步骤配置:启用Windows功能、设置默认WSL版本为2,并检查Docker及其组件是否正常工作。接着详细列出了Docker的基础命令及其用法,包括搜索、下载镜像、管理容器等。同时介绍了Dockerfile的编写方法及其构建过程,以及docker-compose.yml文件的用途。最后提供了运行和管理容器的具体示例。
Windows-Docker学习笔记(一)
|
3月前
|
前端开发 jenkins 持续交付
jenkins学习笔记之二十:docker in docker运行pipeline
jenkins学习笔记之二十:docker in docker运行pipeline
|
3月前
|
jenkins Java 持续交付
jenkins学习笔记之十九:Docker安装jenkins master及动、静态配置slave
jenkins学习笔记之十九:Docker安装jenkins master及动、静态配置slave
|
6月前
|
安全 Linux Docker
Ubantu docker学习笔记(六)容器数据卷
Ubantu docker学习笔记(六)容器数据卷
Ubantu docker学习笔记(六)容器数据卷
|
6月前
|
存储 弹性计算 运维
Docker数据集与自定义镜像:构建高效容器的关键要素
Docker数据集与自定义镜像:构建高效容器的关键要素
133 8
|
6月前
|
Kubernetes 调度 Docker
Ubantu docker学习笔记(十一)k8s基本操作
Ubantu docker学习笔记(十一)k8s基本操作
|
6月前
|
Prometheus 监控 Cloud Native
Ubantu docker学习笔记(九)容器监控 自带的监控+sysdig+scope+cAdvisor+prometheus
Ubantu docker学习笔记(九)容器监控 自带的监控+sysdig+scope+cAdvisor+prometheus
|
6月前
|
存储 应用服务中间件 nginx
Ubantu docker学习笔记(八)私有仓库
Ubantu docker学习笔记(八)私有仓库
下一篇
无影云桌面