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 ,因为好东东西暂时没看懂,所以暂时保留下来,供以 ...
随机推荐
- quartus之LPM_COMPARE测试
quartus之LPM_COMPARE测试 1.IP描述 比较器的IP,可以比较两路数据是否相等.相等输出为1,不等输出为0的aeb信号是需要测试的量. 2.基础测试 module compare_t ...
- KingbaseES V8R6 等待事件之LWLock Buffer_IO
等待事件含义 当进程同时尝试访问相同页面时,等待其他进程完成其输入/输出(I/O)操作时,会发生LWLock:BufferIO等待事件.其目的是将同一页读取到共享缓冲区中. 每个共享缓冲区都有一个与L ...
- 内核模块的makefile规则详解
内核中的Makefile 这里主要对内核源码各子集目录中的Kbulid(内核的编译系统)Makfile进行简单介绍 这部分式内核驱动或设备驱动开发这最长接触到的 Makefile 的语法包括几个方面 ...
- PicGo图床配置github仓库上传typora图片
(前提是已注册github并新建一个仓库作为你上传图片的位置) 首先在PicGo官网下载软件:https://picgo.github.io/PicGo-Doc/zh/ 打开typora,找到偏好设置 ...
- Scala 可变数组ArrayBuffer
1 package chapter07 2 3 import scala.collection.mutable 4 import scala.collection.mutable.ArrayBuffe ...
- Python爬虫爬取ECVA论文标题作者摘要关键字等信息并存储到mysql数据库
网站截图: 源代码: 1 import re 2 import requests 3 import pymysql 4 from bs4 import BeautifulSoup 5 import l ...
- #排列组合,dp#LOJ 6069 「2017 山东一轮集训 Day4」塔
题目传送门 分析 两点之间的最小距离其实是由两点高度最大值决定的, 求出长度为 \(n\) 的排列所需距离的方案数,剩下还能放的距离可以用插板法放进去. 也就是 \(\sum_{i=1}^{n^2}f ...
- 劫持TLS绕过canary pwn89
劫持TLS绕过canary pwn88 首先了解一下这个东西的前提条件和原理 前提: 溢出字节够大,通常至少一个page(4K) 创建一个线程,在线程内栈溢出 原理: 在开启canary的情况下,当程 ...
- go~istio加载wasm的步骤
参考 https://github.com/higress-group/proxy-wasm-go-sdk/tree/main/proxywasm https://github.com/tetrate ...
- Spring源码 20 手写模拟
项目地址 https://gitee.com/liao-hang/hand-write-spring.git 模拟 Spring 注解 自动装配 Autowired @Target(ElementTy ...