博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
devops和docker_使用Docker的现代DevOps
阅读量:2521 次
发布时间:2019-05-11

本文共 2002 字,大约阅读时间需要 6 分钟。

devops和docker

投入生产了吗?

根据说法,Docker不仅已经准备就绪,而且他的公司每周已经在生产中运行数千个Docker容器。 Cavale是的共同创始人和CEO ,集装箱化的持续集成(CI)的平台,他说,泊坞窗提供了机会,从根本上加速了如何DevOps的是“重新设计公司”为IT。

在我们的访谈中,Cavale考察了Docker如何适合DevOps。 他还解释了持续集成和持续开发如何改变开发人员的工作方式,以及为什么Docker特别适合CI / CD应用程序。

对于那些不熟悉持续集成/持续开发的人,您将如何形容? 这些流程如何改变开发人员创建和开发软件的方式?

持续集成是一种开发实践,要求开发人员一天几次将代码集成到共享存储库中。 然后,每个签入均由自动构建进行验证,从而使团队能够及早发现问题。 连续交付(CD)是一种软件工程方法,团队可以在短时间内连续生产有价值的软件,并确保可以随时可靠地发布该软件。 它用于软件开发中,以自动化和改善软件交付过程。 使这些过程自动化可以提高软件开发和部署的效率,从而帮助公司降低成本并防止错误。

在这些自动化流程如何改变开发人员创建和开发软件的方式方面,我们所看到的最重要的变化是:

  • 由于每次签入时都会触发自动CI / CD,几乎消除了将代码合并到master分支中的开销,因此开发人员以较小的增量进行开发和发布。
  • 由于可以立即评估每个单独的签入,因此花费较少的时间来尝试确定谁的代码“破坏了构建”。 结果,团队消除了每周运行一次集成构建,然后执行耗时的调查以调试哪些代码引入了错误的做法。
  • 由于开发人员可以立即收到他们刚刚处理的代码的反馈,而调试的细节却是新鲜的,因此调试所需的时间更少。 每当发现错误的时间延迟时,由于可能忘记了重要的细节,因此调试会花费更长的时间,并且开发人员必须再次增加代码。

是什么使Docker特别适合CI / CD应用程序?

CI / CD应用程序非常适合Docker,原因如下:

  • Docker非常适合瞬态工作负载,因为您可以在几秒钟内启动和关闭容器,这只是调配VM所需时间的一小部分。 这使得Docker为CI流程量身定制,例如每次签入代码时都会启动的构建/ CI验证周期。使用Docker,每个周期都可以按需在其自己的容器中启动,执行,然后使该容器关闭,释放资源。 事实证明,这是比为此目的使用VM更为有效的模型(从VM转换为容器时,Shippable将其Dev / Test环境成本降低了70%)。
  • 在一个容器中,应用程序的所有细节(即代码和它将在其中运行的环境)一起生活在一起,使得轻松轻松地完全复制开发人员代码将在其中运行的环境。这解决了“但是,机器”问题,其中代码可以在开发人员的本地计算机上运行,​​但不能在随后的环境之一(即测试或生产)中运行。
  • 定义应用程序映像后,可以轻松地将其存储并在已安装Docker的任何位置重复使用,从而轻松消除开发人员在本地创建环境时经常执行的耗时任务。 这些图像也可以由IT运营人员获取,以用于部署活动。
  • 好的CI / CD系统还将能够缓存这些图像,因此为开发人员扩展环境可以让开发人员快速而轻松地进行。

您是否看到Docker在CI / CD领域取代了传统的虚拟化技术,还是增加了新功能并加速了流程?

短期内不会淘汰虚拟机,但从长期来看,我们看到基于容器的虚拟化将完全取代虚拟机。

Apache项目在Shippable中扮演什么角色? 您和/或Shippable如何参与Apache Foundation?

Shippable直到最近才开始涉足Apache。 目前,对我们而言,最重要的是Kafka项目。 我们已经开始在内部POC中对其进行评估,以查看它是否可以替代我们为消息服务运行的RabbitMQ。 推动因素是Kafka的可扩展性。

在不花太多钱的情况下,与会者可以在ApacheCon演讲“ 2015年使用Docker进行现代DevOps”中学到什么?

  • Docker已准备好进行生产—Shippable每周可运行超过25,000个容器
  • 通过使用容器,DevOps生命周期的关键要素可以完全转变,从而可以对生命周期进行重大的重新设计。 DevOps正在为IT“重新设计公司”,而Docker提供了从根本上加速这一过程的机会。
  • 使用现代的DevOps,您应该一天多次部署到生产中。 我们将解释Shippable如何每天部署10-40次。

要了解有关Docker的现代开发的更多信息,请在奥斯汀的ApacheCon上参加 。

ApacheCon 2015
演讲者访谈

本文是ApacheCon 2015 一部分汇集了开源社区,以了解推动开源等未来发展的技术和项目。 会议将于2015年4月13日至16日在德克萨斯州奥斯汀举行

翻译自:

devops和docker

转载地址:http://pofzd.baihongyu.com/

你可能感兴趣的文章
custom.js
查看>>
Centos 7 中 QT出现QSqlDatabase: MYSQL driver not loaded
查看>>
在 IBM RAD 平台上基于 JAX-WS 开发 Web Services服务器端,客户端
查看>>
利用forwardInvocation实现消息重定向
查看>>
自定义维度与指标
查看>>
跟我一起玩Win32开发(13):握手对话框
查看>>
C#调用C/C++动态库 封送结构体,结构体数组
查看>>
ASP.NET MVC WebAPI 从入门到精通 (二)– 客户端和WebService之间文件传输
查看>>
卸载LabVIEW及其模块的方法
查看>>
[C/C++] C++中new的语法规则
查看>>
阶段1 语言基础+高级_1-3-Java语言高级_05-异常与多线程_第6节 Lambda表达式_1_函数式编程思想概述...
查看>>
阶段1 语言基础+高级_1-3-Java语言高级_05-异常与多线程_第2节 线程实现方式_12_创建多线程程序的第二种方式_实现Runnable接口...
查看>>
阶段1 语言基础+高级_1-3-Java语言高级_05-异常与多线程_第6节 Lambda表达式_2_冗余的Runnable代码...
查看>>
阶段1 语言基础+高级_1-3-Java语言高级_05-异常与多线程_第2节 线程实现方式_13_Thread和Runnable的区别...
查看>>
阶段1 语言基础+高级_1-3-Java语言高级_05-异常与多线程_第2节 线程实现方式_14_匿名内部类方式实现线程的创建...
查看>>
阶段1 语言基础+高级_1-3-Java语言高级_05-异常与多线程_第3节 线程同步机制_1_线程安全问题的概述...
查看>>
阶段1 语言基础+高级_1-3-Java语言高级_05-异常与多线程_第3节 线程同步机制_2_线程安全问题的代码实现...
查看>>
阶段1 语言基础+高级_1-3-Java语言高级_05-异常与多线程_第6节 Lambda表达式_3_编程思想转换&体验Lambda的更优写法...
查看>>
阶段1 语言基础+高级_1-3-Java语言高级_05-异常与多线程_第4节 等待唤醒机制_4_Object类中wait带参方法和notifyAll方法...
查看>>
阶段1 语言基础+高级_1-3-Java语言高级_05-异常与多线程_第6节 Lambda表达式_4_Lambda标准格式...
查看>>