一 docker的8个使用场景

1.简化配置

虚拟机的最大好处是能在你的硬件设施上运行各种配置不一样的平台(软件, 系统), Docker在降低额外开销的情况下提供了同样的功能. 它能让你将运行环境和配置放在代码汇总然后部署, 同一个Docker的配置可以在不同的环境环境中使用, 这样就降低了硬件要求和应用环境之间耦合度.

2.代码流水线管理

代码从开发者的机器到最终在生产环境上的部署, 需要经过很多的中坚环境. 而每一个中间环境都有自己微小的差别, Docker给应用提供了一个从开发到上线均一致的环境, 让代码的流水线变得简单不少.

3.提升开发效率

不同环境中, 开发者的共同目标:

一, 想让开发环境尽量贴近生产环境.

二 , 想快速搭建开发环境

开发环境的机器通常内存比较小, 之前使用虚拟的时候, 我们经常需要为开发环境的机器加内存, 而现在Docker可以轻易的让几十个服务在Docker中跑起来.

4.隔离应用

开发时会在一个台机器上运行不同的应用.

一, 为了降低成本, 进行服务器整合

二, 将一个整体式的应用拆分成低耦合的单个服务(微服务架构)

5.整合服务器

Docker隔离应用的能力使得Docker可以整合多个服务器以降低成本. 由于没有多个操作系统的内存占用, 以及能在多个实例之间共享没有使用的内存, Docker可以比虚拟机提供更好的服务器整合解决方案.

6.调试能力

Docker提供了很多的工具, 这些工具不一定只是针对容器, 但是却适用于容器. 他们提供了很多功能, 包括可以为容器设置检查点, 设置版本, 查看两个容器之间的差别, 这些特性可以帮助调试Bug.

7.多租户环境

多租户环境的应用中, 它可以避免关键应用的重写.我们一个特别的关于这个场景的例子是为loT(物联网)的应用开发一个快速, 易用的多租户环境. 这种多租户的基本代码非常复杂, 很难处理, 重新规划以应用不但消耗时间, 也浪费金钱.

使用Docker, 可以为每一个租户的应用层的多个实例创建隔离的环境, 这不仅简单而且成本低廉, 因为Docker环境启动的速度快, diff命令很高效.

8.快速部署

Docker为进程创建一个容器, 不需要启动一个操作系统, 时间缩短为秒级别.

可以在数据中心创建销毁资源而无须担心重新启动带来的开销. 通常数据中心的资源利用率只有30% , 通过使用Docker并进行有效的资源分配可以提高资源的利用率.

二 docker的缺点

三 docker的相关知识点

Docker组件(核心):镜像、容器、库。

采用C/S架构:客户端(执行程序)→通过命令行和API形式和守候程序(提供Docker服务)进行通讯。

镜像:一个只读的静态模板(框架体系);包含环境和应用执行代码(框架语言);采用分层机制。将新增数据通过联合文件系统附加在原基础上。

容器:一个运行时环境,是镜像的运行状态,是镜像执行的一种动态表现。

库:使用注册服务器(共有的or私有的)存储和共享用户的镜像,是某个特定用户存储镜像的目录。

*Docker********特性

*隔离性:libcontainer(默认容器)=>内核命名空间。

*安全性:内部(cgroups)|容器和宿主主机(内核能力机制)。

*可度量性:cgroups(控制组)→资源度量和分配(用户)。

*移植性:AUFS(快速更新)→层的概念。

-----使用AUFS作为Docker容器的文件系统,提供的好处:

Docker优点(比较LXC****):****

*跨平台可移植性:按统一标准打包(镜像中),可传播。

*面向应用:优化部署应用(设计哲学)→API,接口及文档(体现)。

*版本控制:追踪、查询、记录版本信息(应用程序更改史)和回滚版本等

*组件复用:组件式搭建(基础镜像)→Python(运行环境) | postgreasql(基础镜像)。

*共享性:公共的注册服务器(可免费下载源码)。

Docker的使用场景以及优缺点相关推荐

  1. BigData:大数据开发的简介、核心知识(linux基础+Java/Python编程语言+Hadoop{HDFS、HBase、Hive}+Docker)、经典场景应用之详细攻略

    BigData:大数据开发的简介.核心知识(linux基础+Java/Python编程语言+Hadoop{HDFS.HBase.Hive}+Docker).经典场景应用之详细攻略 BigData:大数 ...

  2. docker 虚拟机搭建mongodb一主一从一复制_云计算学习路线图素材课件:Docker容器应用场景分析...

    Docker容器是一个开源的应用容器引擎,它能够自动执行重复性任务,例如搭建和配置开发环境,用户可以方便地创建和使用容器,还可以进行版本管理.复制.分享.修改.有很多初学云计算的同学不清楚Docker ...

  3. Docker(三)关于docker 的应用场景

    个人认为docker的最大的优势在与,服务搭建极大的减少了N多配置,就可以运行服务,另外由于体积小,又能隔离空间,可以快速的部署,发布,弹性伸缩,提高了服务器的利用率.但是在有些方面对于企业级来讲,并 ...

  4. etc的常见算法_几个常用算法的适应场景及其优缺点(非常好)

    本文主要回顾下几个常用算法的适应场景及其优缺点! 机器学习算法太多了,分类.回归.聚类.推荐.图像识别领域等等,要想找到一个合适算法真的不容易,所以在实际应用中,我们一般都是采用启发式学习方式来实验. ...

  5. 策略模式总结,适用场景,优缺点,代码示例

    策略模式总结,适用场景,优缺点,代码示例 1.简介 1.1 继承带来的扩展和复用问题 1.2 进一步改进,利用接口 1.3 进一步改进,策略模式 2.适用场景 3.优点 4.缺点 5.代码示例 6.源 ...

  6. Docker 的应用场景在哪里?

    http://www.zhihu.com/question/22969309 Docker 的应用场景在哪里? 虽说docker最近很火,可以实现快速部署.但是真正想要往生产环境去部署的时候,却不知道 ...

  7. **Java有哪些悲观锁的实现_面试4连问:乐观锁与悲观锁的概念、实现方式、场景、优缺点?...

    推荐阅读: 数据库面试4连问:分库分表,中间件,优缺点,如何拆分? 终极手撕之架构大全:分布式+框架+微服务+性能优化,够不够? 消息队列面试,你能顶得住面试官这波10大连环炮的攻势吗? 01 乐观锁 ...

  8. SAP 电商云 UI 持续集成里 docker 的使用场景一例

    总共有三个场景: 我们看 hs-deploy-action 这个例子. 全部逻辑都在 Dockerfile 里. FROM node:12COPY package.json / COPY yarn.l ...

  9. Docker学习总结(40)——Docker常见应用场景再总结

    前言 Docker提供了轻量级的虚拟化,它几乎没有任何额外开销,这个特性非常酷.首先你在享有Docker带来的虚拟化能力的时候无需担心它带来的额外开销.其次,相比于虚拟机,你可以在同一台机器上创建更多 ...

最新文章

  1. Gym - 102082G
  2. 2021年春季学期-信号与系统-第十二次作业参考答案-第七小题
  3. View是如何被添加到屏幕窗口上的
  4. [转]android使用shape stroke描边只保留底部
  5. NYOJ 982 Triangle Counting (数学题)
  6. Powershell管理系列(三十九)PowerShell查询和解锁AD账号
  7. 分布式数据库技术基础:分布透明性相关知识
  8. 网页导出pdf不完整_今天才知道!Word、Excel、PDF格式还能随意转换,20秒即可实现...
  9. 均匀三次b样条曲线_西门子数控曲线加工进给速度优化指令
  10. 实用!使用Mac内置功能一键转换繁体与简体中文
  11. atitit.无线网卡 不能搜索到WiFi 无线路由信号的解决不能上网
  12. Boost Thread 编程指南、Boost线程入门教程
  13. 2019JAVA中ajax不高亮_2019-01-18 ajax请求时,token死活放不大header中
  14. P1137【旅行计划】
  15. 怎么下载正版java7_Java7中jdk的下载和安装
  16. 糖豆人终极淘汰赛服务器维护,糖豆人终极淘汰赛常见问题解决方法一览 糖豆人终极淘汰赛常见问题解决方法汇总...
  17. 记一次微信支付回调失败的修复
  18. Android Content开头的Uri和文件绝对路径互相转换
  19. PAC(probably approximately correct) 学习架构介绍
  20. 科学家风采 | 2022 ACM杰出会员揭榜:本刊编委陈恩红教授入选!

热门文章

  1. Centos安装Redis
  2. zynq amp Linux+bare裸跑代码中不能响应irq61中断
  3. js算法中的时间复杂度
  4. Linux——LVM管理之文件系统新建
  5. 【优化模型】最短路问题 之 固定起点的最短路
  6. 《荒野求生手册》读后感
  7. 陶泓达:3.29午间欧盘最新走势分析及操作建议!
  8. Matrix.postScale
  9. 数据结构:图的算法和应用
  10. MySQL安装的requirements问题