我在过去的几个月里一直在Linux基金会工作,研究开源行业的新发展和采用趋势。 如果您在过去的一年中花了很多时间来阅读有关开源的文章,那么您可能已经听说过Docker。 如今,很多人都在谈论它,以及它将对虚拟化和DevOps产生的影响。

使用这样的新技术,通常很难过滤出炒作并了解实际含义。 此外,复杂的术语通常会使诸如Linux容器之类的主题对外行造成混淆,并将讨论限制在对这一主题有深入了解的人们面前。 在本文中,我将退一步讨论Docker可以做什么,以专注于它如何改变Linux环境。

Docker又是什么?

简而言之, Docker是 Linux容器(LXC) 的扩展 :这是一种独特的轻量级,以应用程序为中心的虚拟化,可显着减少开销并使其更易于在服务器上部署软件。 Docker的创始人所罗门·海克斯(Solomon Hykes)用类似于使用标准化运输集装箱在全球运输各种货物的类比,很好地解释了此功能。 Docker允许系统管理员和开发人员在虚拟沙箱中构建可在任何Linux发行版或硬件上运行的应用程序,而无需针对不同环境进行自定义构建。 这些功能吸引了许多知名人士,使Docker成为去年最成功的开源项目之一 。 似乎Docker会留下来,这对Linux意味着什么?

Docker的多种用途

红帽一直处于Docker采用和开发的最前沿, Paul Cormier是其使用的最大倡导者之一。 自去年9月以来 ,该公司一直与Docker紧密合作 ,并一直致力于改善Docker在OpenShift平台上的功能。 总体重点是使用Docker作为一种工具机制来改善应用程序虚拟化中的资源管理,进程隔离和安全性 。 这些努力最终以Project Atomic的发布而告终 , Project Atomic是专门为运行Linux容器而量身定制的轻量级Linux主机。 该项目的重点是使容器在比典型Linux主机所需资源少得多的环境中易于部署,更新和回滚。

适用于DevOps的Docker

Docker使用的另一个主要重点是DevOps社区。 Docker的设计方式可以将其集成到大多数DevOps应用程序中 ,包括Puppet,Chef,Vagrant和Ansible,也可以单独用于管理开发环境。 主要的卖点是简化了其他应用程序通常完成的许多任务 。 具体而言,Docker可以设置与实时服务器完全相同的本地开发环境,从同一台主机运行多个开发环境,每个主机具有唯一的软件,操作系统和配置,在新的或不同的服务器上测试项目,并允许不论本地主机环境如何,任何人都可以使用完全相同的设置来从事同一项目。 最后,Docker可以消除开发团队在本地计算机上安装相同版本的所有内容的需要。

Spotify正在努力将Docker纳入其开发工作流程 。 Docker映像的可重复性使它们更容易标准化其生产代码和配置。 他们的工作促成了Helios的创建,该应用程序可以管理多台服务器上的Docker部署,并在服务器未运行正确版本的容器时向其发出警报。

Docker进行持续集成

eBay一直致力于将Docker纳入其持续集成过程中,以标准化跨单个服务器运行的分布式服务器网络的部署 。 它们将容器内的应用程序依赖关系隔离开来,以解决每个服务器具有不同软件版本,应用程序依赖关系和特殊硬件的问题。 这意味着主机OS不必与容器OS相同,并且最终目标是使不同的硬件和软件系统作为单个Mesos群集运行。

Docker的沙箱安全性

远程面试为招聘人员开发软件,以测试应聘者的发展技能。 他们发布了CompileBox ,这是一个基于Docker的沙箱,可以运行不受信任的代码并返回输出,而不会冒着运行该软件的主机的风险。 在CompileBox的开发过程中,Remote Interview的团队考虑使用Chroot jails,Ideone和传统虚拟机,但是Docker被选为最佳选择 。 Chroot无法提供所需的安全级别,Ideone可能会很快变得成本过高,并且虚拟机在受到威胁后需要花费非常长的时间才能重新启动。 Docker是此应用程序的不二之选,因为尝试破坏系统的恶意代码将仅限于容器,并且可以根据需要快速创建和销毁容器。

Docker的未来

许多公司和组织正在将Docker引入桌面应用程序 ,这一壮举可能对最终用户产生广泛影响。 微软甚至通过将Docker引入其Azure平台而参与进来 ,这一发展可能使Linux应用程序与Microsoft产品的集成比以往任何时候都容易。

Docker 1.0于6月9日发布,即Dockercon的第一天,它被认为是足够稳定的Docker版本,可供企业使用。 伴随此发布, Docker与libcontainer背后的公司之间宣布了新的合作伙伴关系 ,从而为使libcontainers成为基于Linux的容器的默认标准做出了统一的努力。 Docker和Linux容器的增长没有丝毫放缓的迹象,而且随着新业务定期涌入潮流,我预计来年会有很多新的发展。

翻译自: https://opensource.com/business/14/7/docker-through-hype

谁在使用Docker?相关推荐

  1. /var/lib/docker/overlay2/xxxxx no such file or directory docker文件删除引发的问题

    记一次误删引发的服务雪崩 K8s node节点磁盘报警,报警后我找到服务中占用磁盘最多的地方,在overlay2目录下,对下面的文件进行了删除   删除后,有状态服务先出现了问题,服务无法启动.停止. ...

  2. 本地打包Docker镜像上传至阿里云远程仓库(一站式脚本)

    打包镜像上传至远程仓库: 1. 本地项目为 mytest-project 2. 仓库为阿里云镜像仓库 registry.cn-beijing.aliyuncs.com/test/mytest-proj ...

  3. docker报错:driver failed programming external connectivity on endpoint, iptables:No chain by that name

    docker 报错: Error response from daemon: Cannot restart container hello: driver failed programming ext ...

  4. Docker容器的备份与恢复,Docker镜像的备份与恢复

    1. 备份容器 首先,为了备份Docker中的容器,我们会想看看我们想要备份的容器列表.要达成该目的,我们需要在我们运行着Docker引擎,并已创建了容器的Linux机器中运行 docker ps 命 ...

  5. docker安装kafka消息队列

    1. 启动zookeeper容器(Zookeeper用于崩溃检测,实现Topic发现,和维护Topic的生产和消费状态) docker run -d --name zookeeper -p 2181: ...

  6. 设置普通用户执行docker命令,执行docker命令无需输入密码或者切换root用户

    每次执行docker命令都要输入密码或者切换root用户,非常不方便,尤其是在shell脚本中就更麻烦了,一起来解决这个问题: 1. 创建名为docker的组,如果之前已经有该组就会提示已存在: su ...

  7. docker :open /var/lib/docker/tmp/GetImageBlob318829910: no such file or directory异常解决

    千万不要直接去重装docker,不要删除镜像,不要手动创建目录和文件,只需要这样就好了!

  8. 将jar包部署在docker上,将jar包打成镜像,使用docker部署jar包

    假设你已经准备好以下东西,即可进行服务部署 一台安装好docker的linux服务器(安装docker见安装docker) 准备好的jar包 接下来开始吧! 将jar包上传至服务器(建好文件夹存放以方 ...

  9. 使用rancher对Docker容器服务升级

    这是笔者以前使用到的一个docker管理工具--rancher 升级服务的步骤 记录一下,说不定有人需要或者以后能用上呢? 1.打包好后上传服务器,编写Dockerfile FROM jdk8apli ...

  10. Linux/docker下oracle开启监听,开启自动启动

    写在前头: 之前呢,使用docker安装了oracle,但它默认是会关闭的.使用了几天以后突然连接异常了,报的问题是oracle监听有问题了,我知道了是oracle服务自动关闭了,监听也跟着关了.所以 ...

最新文章

  1. React for循环渲染组件
  2. R语言glm模型预测(predict)过程及Error in eval(predvars, data, env) 错误原因
  3. python词频云图_python安娜卡列妮娜词云图制作
  4. 关于ios手机上传图片旋转问题的解决
  5. Android官方开发文档Training系列课程中文版:通知用户之在通知中显示进度
  6. mysql的utf8与utf8mb4 异同;utf8mb4_unicode_ci 与 utf8mb4_general_ci 如何选择
  7. 论文阅读丨神经清洁: 神经网络中的后门攻击识别与缓解
  8. vue 右键菜单插件 简单、可扩展、样式自定义的右键菜单
  9. json转为tfrecord格式文件怎么转_怎么把pdf转换成jpg图片?pdf转图片格式的方法很好用...
  10. 游戏中的心理学(一):认知失调有前提条件
  11. 多功能数字时钟(VHDL)
  12. Using Vanishing Points for Camera Calibration
  13. 四川双流高中2021高考成绩查询,超全!2019四川各地高中高考喜报汇总!
  14. java bidi_Java Bidi類代碼示例
  15. 读书笔记《股票作手回忆录》
  16. 小学计算机室每日管理日志,2017小学信息技术工作研修日志
  17. 微信 和 支付宝 公众服务号开发者文档
  18. SCRUM Beta Day 2
  19. 为什么直通车关键词点击率和转化率会低
  20. 【BIM入门实战】Revit建筑墙体:构造、包络、叠层图文详解

热门文章

  1. 《Windows 系列》- 修改hsot
  2. telnet命令 date命令
  3. mysql安装图解及报错解决
  4. AngularJS之过滤器
  5. 安卓窗口动画修改制作心得
  6. Memcached 简单应用
  7. IBM T60网卡问题
  8. 算法高级(1)-概述
  9. python输出玫瑰花_如何用python画玫瑰花
  10. 使用rsync工具构建php项目管理平台