注:该文原文为 Why You Should Care About Docker ,由 CHRIS DAWSON 编写。

当我在 Dockercon 上陶醉于那些令人激动地议题时,我想到了一个问题:我该如何向在波特兰家中的妻子去解释 Docker 呢?我的妻子这时正在照料我们只有18个月大的生病的孩子。是什么让 Docker 这么有吸引力,以至于让我在 30 岁高龄时依旧奔波了 600 英里去参加这个大会?

现在会议中大多数关于 Docker 的新闻都需要你了解诸如 cgroup、systemd 和 LXC 这样复杂的技术。如果你在 Stack Overflow 或者 Server Fault 这种网站的排名低于 1000 的话,去参加这样一场会议会让你很快赶到绝望。我希望能够跳过那些技术,直接告诉你为什么 Docker 会让你赶到兴奋。为什么 Docker 能够让你的工作更简单,能够简化商业应用的流程,能够让一个公司更强大。

Docker 可以加速新技术的采用,即使是在那些保守的企业

昨天吃中午饭的时候,我和两个在财富 500 强的金融服务公司工作的程序员聊天。他们向我讲述了在他们公司使用新的技术是一件多么困难的事情。公司里的安全专家只会对那些新技术说 “no” ,他们与那些更激进的想要使用新技术的程序员们的斗争已经成为了一种常态。

Docker 作为一种标准的交付系统,把资源分配以及安全隔离的责任从操作人员和安全人员手中的责任清单中转移到了容器中。尽管这并不是银弹,但是如果安全团队只用负责验证 Docker 容器进程的安全性的话,他们会更可能同意使用新技术。这改变了游戏的规则。

Docker 让维护旧的系统和代码更简单

无论你在运行那个版本的 Linux,Docker 都会让维护系统变得简单。就像上面提到的,很多大型的企业都必须支持大量旧的系统和代码,而创业公司通常不会有这些问题。当我问来自 Heroku 的 Fabio KungRafael Rosa 他们是如何解决这个问题的时候 Fabio 告诉我 Docker 使得他们维护旧系统和代码变得简单。你不需要用真实的物理主机去跑这些系统,也不需要用一个重量级的虚拟机(如果你的旧系统在一个 Linux 版本上运行), Docker 给你提供了一个新的选择。 Docker 可以降低你维护旧系统的代价,甚至可以将你在上面的操作记录下来形成一个带版本控制的 “Dockerfile”。

Docker 可以快速降低部署的痛苦

管理者们通常会忽视持续集成、单元测试和敏捷开发这样的开发实践,但是他们会真切地关注一件事情,那就是开发的最后一个环节——部署。讽刺的是,尽管有上述和更多工具的支持,部署依然是一件令开发者十分头疼的工作。就像 Spotify 的工程师 Rohan Singh 昨天和我强调的那样,在提交最终版经过测试的代码和代码在生产服务器上运行之间还存在很大的距离。 Docker 可以极大的简化这最后一步,这对管理者和程序员们来说很重要,并且这样可以更快的让最新的产品呈现在用户面前。

Docker 可以为财富500强的企业和创业公司解决问题

在大会上,那些大公司通过使用 Docker 获得了巨大的提升的事情深深的吸引了我。 Docker 现在正在经历着高速的发展,可以预料到只有那些创业公司和使用者可以持续的跟进他。 Docker 已经展示了他和大企业和小企业之间都有很强的关联性。

随着更多的公司采用并且改进 Docker,Docker 正在变得越来越好。参加 DockerCon 2014 是一段令人兴奋的经历。

[译]为什么你应该关注 Docker的更多相关文章

  1. 【译】优雅的停止docker容器

    1. 介绍 Docker的大部分重点是在隔离的容器中打包和运行应用程序的过程.有无数的教程说明了如何在Docker容器中运行应用程序,但是很少有教程讨论如何正确停止容器化的应用程序.这似乎是一个愚蠢的 ...

  2. 读懂这几个关键词,你就能了解 Docker 啦

    基于高度虚拟化所诞生的容器技术,如今已经走向大规模应用.那么容器.虚拟机.Docker.Openstack.Kubernetes 之间又有什么关系,对现在的选择有什么影响呢? 上世纪 60 年代,计算 ...

  3. 林帆:Docker运行GUI软件的方法

    继上周的“Kubernetes v1.0特性解析”分享之后,本周我们邀请到ThoughtWorks咨询师林帆为大家带来主题为“Docker运行GUI软件的方法”的分享. 嘉宾简介:林帆,Thought ...

  4. 深入浅出Docker(三):Docker开源之路

    背景 Docker从一开始的概念阶段就致力于使用开源驱动的方式来发展,它的成功缘于国外成熟的开源文化氛围,以及可借鉴的社区运营经验.通过本文详细的介绍,让大家可以全面了解一个项目亦或者一项技术是如何通 ...

  5. Docker的大坑小洼(二)

    再谈<Docker的大坑小洼> 今天闲暇看了一下宏亮同学写的一篇<Docker的大坑小洼>,非常受启发.因为Docker的文章真的很多了,但大家如果只是玩一玩,有很多坑是不会碰 ...

  6. (翻译)一起使用 .NET 和 Docker——DockerCon 2018 更新

    原文:https://blogs.msdn.microsoft.com/dotnet/2018/06/13/using-net-and-docker-together-dockercon-2018-u ...

  7. 在Docker里使用(支持镜像继承的)supervisor管理进程(转)

    这篇文章是受 dockboard 之托帮忙翻译的与 docker 有关的技术文章.译自 Using Supervisor with Docker to manage processes (suppor ...

  8. docker安全最佳实践概述

    /************************************************* * Author : Samson * Date : 08/07/2015 * Test plat ...

  9. Docker学习总结(11)——八个Docker的真实应用场景

    [编者的话]Flux 7介绍了常用的8个Docker的真实使用场景,分别是简化配置.代码流水线管理.提高开发效率.隔离应用.整合服务器.调试能力.多租户环境.快速部署.我们一直在谈Docker,Doc ...

  10. Docker 0x03:Install Docker

    目录 Install Docker Centos yum 安装 运行docker-daemon并开机自启动 运行hello-world应用docker容器中 Ubn Install Docker do ...

随机推荐

  1. 从旺店通·企业奇门到用友U8通过接口集成数据

    从旺店通·企业奇门到用友U8通过接口集成数据 接入系统:旺店通·企业奇门 慧策(原旺店通)是一家技术驱动型智能零售服务商,基于云计算PaaS.SaaS模式,以一体化智能零售解决方案,帮助零售企业数字化 ...

  2. 【uniapp】【微信小程序】【外包杯】如何创建分包

    意义:分包可以减少小程序数次启动时的加载时间 1.创建分包的根目录 2.在page.json中,和pages节点平级的位置声明节点,用来定义分包的相关结构 3.在subpkg目录上新建页面 4.完成了

  3. 练习感受以及经验总结(ing)

    connection = DriverManager.getConnection(url, user,password );顺序一定不能搞错,当时顺序写错了.查bug查了一晚上.得益于两个函数都用到了 ...

  4. Tainted canvases may not be exported,视频帧截图跨域

    做原生相机拍照的时候遇见的有趣问题,视频流是上传到云服务器的在线链接,赋值到video的src上,然后使用canvas的drawImg方法去截取视频帧做照片,结果canvas报错视频跨域. 解决方案: ...

  5. SpringBoot实战项目:蚂蚁爱购(从零开发)

    ​ 简介 这是从零开发的SpringBoot实战项目,名字叫蚂蚁爱购. 从零开发项目,视频加文档,十天彻底掌握开发SpringBoot项目. 教程路线是:搭建环境=> 安装软件=> 创建项 ...

  6. springboot下添加全局异常处理和自定义异常处理

    前言 在spring项目中,优雅处理异常,好处是可以将系统产生的全部异常统一捕获处理,自定义的异常也由全局异常来捕获,如果涉及到validator参数校验器使用全局异常捕获也是较为方便. 相关代码: ...

  7. SpringBoot核心注解:@SpringBootApplication

    @SpringBootApplication它是由三个注解的复合: @ComponentScan @SpringConguration @EnableAutoConfiguration 三个注解的作用 ...

  8. 从零开始封装 vue 组件

    对于学习 Vue 的同学来说,封装 vue 组件是实现代码复用的重要一环.在 Vue 官网中非常详细地介绍了 vue 组件的相关知识,我这里简单摘取使用最频繁的几个知识点,带大家快速入门 vue 组件 ...

  9. rust 过程宏

    简介 Rust 编程语言里面有两种宏系统,一种是声明宏(Declarative Macros),另一种为过程宏(Procedural Macros).声明宏和过程宏是两种基本上完全不一样的宏系统,编写 ...

  10. vulnhub - lazySysAdmin - writeup

    信息收集 可以看到目标开放了常见的22, 80, 139, 445, 3306这个6667的服务少见. root@kali tmp/lazySysAdmin » arp-scan -I eth1 -l ...