Docker 必知必会----初识
什么是Docker?
Docker 是一个开源的容器管理引擎。开发者可以通过Docker直接管理应用程序所需要的容器。它的logo如下:
为什么需要Docker
使用Docker主要有两个原因,
1、屏蔽不同环境的硬件差异,减轻开发人员在不同环境上,为了适配环境差异所需要做的工作。如各项系统配置、环境变量、基础包等。
2、统一服务部署的和执行的差异,让环境部署统一化流程化。(防盗连接:本文首发自http://www.cnblogs.com/jilodream/ )
以上是笔者在长期使用docker后的认知。如果你第一次接触docker,或者只是听过docker的大名,感觉上文说的很模糊,则不必关注这些细节,
使用多了自然有自己的体会。你只需要知道Docker是类似于虚拟机的一个新兴产品。他可以统一管理各类虚拟机的安装和运行。注意这里是类似,docker虽然和虚拟机一样都是通过虚拟化技术来实现程序以及运行环境的部署和运行,但是二者在设计和实现中有着本质的区别。docker更加轻量级,占用的系统资源更少,响应速度也更快,更便捷。这也是为什么虚拟化技术推广了很多年,传统的虚拟化机一直不温不火,而docker一经推出后,才真正带动了这个市场。以下是我找到的一些两者的对比资料:
接下来讲讲docker的一些基本概念:
镜像:
docker中最基本的概念之一,可以理解为编程语言中的类。或者理解为某一个虚拟机的安装包。
容器:
docker中最基本的概念之一,可以理解为编程语言中的对象。也就是镜像实例化后的产物。再粗糙一点,可以说是虚拟机安装包后实际运行起来的应用程序。
DockerFile:
一个用来描述docker 镜像制作流程的声明式的脚本文件。该文件会描述镜像的制作流程以及环境变量等系统参数。但是不要担心,我们在制作镜像时,并不是从0开始写一个镜像,而是基于某一个基础镜像来制作的。常用的基础镜像早已由各个的生产厂商制作好了。我们直接拿来使用即可。至于如何编写DockerFile,会在后文中介绍。(防盗连接:本文首发自http://www.cnblogs.com/jilodream/ )
镜像仓库:
镜像仓库也就是保存在远端的用于存储镜像的仓库。我们在使用镜像时,需要将远端的仓库中的镜像先下载到本地,然后本地在根据镜像,生成对应的容器。
镜像仓库可以是外部开发的镜像仓库,也可以是出于安全考虑,自己搭建的仓库服务,常用的有harbor。
大家有没有发现其实docker的设计思路和maven非常想象。
公共组件放置在远端仓库(镜像仓库),本地需要就下载。下载下来各种包(镜像)以后,我们直接使用实例(容器)。
在回到docker,docker 的logo如上图,是一条鲸鱼,承载着各个集装箱。
集装箱在英文为Container [kənˈteɪnər],也就是容器的意思。
docker 是什么意思,[ˈdɑːkər] 码头工人。也就是说docker 就是一个容器的管理系统,负责组装、搬运、卸载我们的容器。
Docker 必知必会----初识的更多相关文章
- 读书笔记汇总 - SQL必知必会(第4版)
本系列记录并分享学习SQL的过程,主要内容为SQL的基础概念及练习过程. 书目信息 中文名:<SQL必知必会(第4版)> 英文名:<Sams Teach Yourself SQL i ...
- 读书笔记--SQL必知必会--建立练习环境
书目信息 中文名:<SQL必知必会(第4版)> 英文名:<Sams Teach Yourself SQL in 10 Minutes - Fourth Edition> MyS ...
- 读书笔记--SQL必知必会12--联结表
12.1 联结 联结(join),利用SQL的SELECT在数据查询的执行中联结表. 12.1.1 关系表 关系数据库中,关系表的设计是把信息分解成多个表,一类数据一个表,各表通过某些共同的值互相关联 ...
- 读书笔记--SQL必知必会18--视图
读书笔记--SQL必知必会18--视图 18.1 视图 视图是虚拟的表,只包含使用时动态检索数据的查询. 也就是说作为视图,它不包含任何列和数据,包含的是一个查询. 18.1.1 为什么使用视图 重用 ...
- 《MySQL 必知必会》读书总结
这是 <MySQL 必知必会> 的读书总结.也是自己整理的常用操作的参考手册. 使用 MySQL 连接到 MySQL shell>mysql -u root -p Enter pas ...
- 《SQL必知必会》学习笔记(一)
这两天看了<SQL必知必会>第四版这本书,并照着书上做了不少实验,也对以前的概念有得新的认识,也发现以前自己有得地方理解错了.我采用的数据库是SQL Server2012.数据库中有一张比 ...
- SQL 必知必会
本文介绍基本的 SQL 语句,包括查询.过滤.排序.分组.联结.视图.插入数据.创建操纵表等.入门系列,不足颇多,望诸君指点. 注意本文某些例子只能在特定的DBMS中实现(有的已标明,有的未标明),不 ...
- .NET程序员项目开发必知必会—Dev环境中的集成测试用例执行时上下文环境检查(实战)
Microsoft.NET 解决方案,项目开发必知必会. 从这篇文章开始我将分享一系列我认为在实际工作中很有必要的一些.NET项目开发的核心技术点,所以我称为必知必会.尽管这一系列是使用.NET/C# ...
- 0005 《SQL必知必会》笔记01-SELECT语句
1.SELECT基本语句: SELECT 字段名1,···,字段名n FROM 表名 2.检索所有字段,用"*"替换字段名,这会导致效率低下 SELECT * FROM 表名; 3 ...
- 2015 前端[JS]工程师必知必会
2015 前端[JS]工程师必知必会 本文摘自:http://zhuanlan.zhihu.com/FrontendMagazine/20002850 ,因为好东东西暂时没看懂,所以暂时保留下来,供以 ...
随机推荐
- Java程序连接KingbaseES 异常
错误信息: --KStudio客户端工具错误信息 The conncetion attempt failed.Reason:connect time out --Java应用程序控制台日志 Cause ...
- KingbaseES V8R6 集群运维系列--sys_monitor.sh stop关闭集群分析
案例说明: 对于KingbaseES V8R6集群关闭整个集群通过执行'sys_monitor.sh stop'命令完成,本案例解析了在执行'sys_monitor.sh stop'后,数据库的关闭方 ...
- 12个月大厂主机免费领AWS Azure Google-Cloud还不快到碗里来
目录 简介 AWS Azure Google Cloud Oracle 总结 简介 最近有个朋友问我哪里有免费主机可以领,说实话这个问题也困扰了我很久,之前也在网上寻找免费主机,可是免费的基本上都有一 ...
- C 语言运算符详解
C 语言中的运算符 运算符用于对变量和值进行操作. 在下面的示例中,我们使用 + 运算符将两个值相加: int myNum = 100 + 50; 虽然 + 运算符通常用于将两个值相加,就像上面的示例 ...
- SQL 中的 NULL 值:定义、测试和处理空数据,以及 SQL UPDATE 语句的使用
SQL NULL 值 什么是 NULL 值? NULL 值是指字段没有值的情况.如果表中的字段是可选的,那么可以插入新记录或更新记录而不向该字段添加值.此时,该字段将保存为 NULL 值.需要注意的是 ...
- Windows wsl2安装Docker
wsl2的Ubuntu安装好后,就可以安装Docker了. 由于众所周知的原因,国内访问国外的某些网站会访问不了或者访问极慢,Docker的安装网站就在其中. 所以推荐使用阿里的镜像进行安装. 1.使 ...
- 【实变函数】四、Lebesgue积分
[实变函数]4. Lebesgue积分 本文介绍Lebesgue积分的定义,并给出积分的一些常用性质.注意Lebesgue积分的定义是从非负函数向一般函数扩展的,这依托于一般函数的分解\(f(x)=f ...
- Python格式化字符串:%、format、f-string
目前Python格式化字符串的方式有三种: 1. % 2.format 3.f-string % 格式化常用方法: # % 格式化字符串 s1 = 'name is %s' % ('zhangsan' ...
- jemter返回结果中文乱码
如图,返回的结果,中文出现乱码 对于这个问题有两种解决方法 第一种:修改jemeter文件,需要重启jemter 在 bin 目录下,找到 jmeter.properties 这个文件,修改编码格 ...
- 国产开源数据库OpenGauss的安装运行
步骤一:OpenGauss 的安装 环境 OS:openEuler 20.03 64bit with ARM 架构:arm64 部署:单机 安装过程 1.环境配置 安装依赖包: yum install ...