>> [音乐播放]
DAVID马兰：好的。
非常感谢你的光临。
这是码头工人，一个CS50研讨会 技术，我们自己和CS50
已经开始使用现在的一段时间。
所以，我的名字是大卫·马兰，我 哈佛教授的介绍
计算机科学。
在相当一些年来， 我们一直在给学生
下载的客户端侧 虚拟机
上，他们做他们的问题集。
我们现在已经转变 到云环境
实际使用这项技术 叫多克尔，使得所有CS50
学生现在有自己的 自己的码头工人集装箱
那你很快就会听到一切。
>> 此外，CS50的服务器上 方群，多年
我们使用亚马逊的云服务器。
我们运行的各个 虚拟机。
也就是说，我们也已经开始过渡到 这些东西叫做泊坞容器
让我们所有的应用程序都是现在 完全相互分离。
在这样的情况多了，让我 介绍我们的朋友，尼科和马诺，
从码头工人本身。
NICOLA KABAR：谢谢你，大卫。
大家好。
我的名字是尼克，这是马诺。
我们从泊坞窗。
我们将要谈论about-- 让你们的介绍，以泊坞窗，
并希望，接近尾声 这次谈话中可以实现
你可以用多少医生 草酸盐应用程序开发
和部署。
>> 所以，我们要开始真正的 快与一些背景资料。
描述一下码头工人的全部。
它是如何工作的？
它是如何架构？
我会做一些演示。
而马诺将是 描述你如何使用泊坞窗
并为您的具体步骤 如何上手。
>> 我将不胜感激，如果你们能装 关闭您的问题接近尾声。
这样的话，我可能会解决这些 问题在整个演示文稿。
因此，我们将留一些时间 接近尾声的问题。
>> 因此，只要真正的快，谁拥有 实际工作过码头工人，
喜欢玩吗？
真棒。
凉。
大。
所以，我要开始 一些历史。
因此，早在20世纪90年代和 21世纪初，基本
作为Web开发人员，应用程序开发人员， 当他们去部署应用程序
它被拴裸机。
这是一台服务器。
这是一个应用程序。
>> 传统上，一个例子 会像一个LAMP堆栈，
在这里你实际上必须 调出的资源池。
CPU，内存，磁盘，网络，安装 操作系统在其顶部。
如果如果你提供的东西， 你实际上有Web服务器，
你需要像 Apache来为它服务。
>> 如果您的应用程序 需要数据库，反手，
你安装的东西 如MySQL，等等。
如果你需要在运行时，PHP的 和PHP Python的工作都在那里。
因此，我们实际上不得不 采取以那些步骤
让您的应用程序启动和运行。
>> 如果你需要更多的计算能力，你 基本上有打电话给你的行动的人
或加仑去和机架新 硬件设备，它连接，
你必须重复这些 流程连连。
所以这个过程是 相对昂贵。
肯定是非常缓慢的。
>> 这是低效的。
而且在很多情况下，你的 硬件是没有得到充分利用。
所以，在90年代末和21世纪初， 硬件虚拟化碰到。
正如你可以看到在这里 图片，基本上他们做了什么
抽象的池 免费硬件资源
与那种服务的 给上层，
在这种情况下，客户操作系统。
>> 与整体思路 虚拟机碰到
而真正帮助云 计算作为我们今天所知道的。
所以，这是什么意思是你 可以同时运行多个虚拟机，这
意味着多堆，多 应用程序在同一台物理机器上。
>> 这无疑有助于用 速度的应用程序部署。
肯定有费用。
你不必去花 能量，时间和资源，以架
更多的服务器来得到更多的计算。
和的速度实际上使 这些资源了要快得多。
大。
>> 因此，我们解决世界饥饿问题，对不对？
不，不是真的。
因此，虚拟化技术，它更是 实际的帮助下，解决这个问题，
它实际上介绍 很多挑战。
管理程序肯定 推出了很多的复杂性，
处理这些底层 池资源。
>> 这在某种意义上更重的前 你有一个单一的操作系统，它
就像在磁盘上三，四演出。
现在，如果你有10台机器 在单个硬件
你必须乘以 通过机器的数量。
这肯定是更 贵在某种意义上你还是
必须获得许可 虚拟化技术
如果它不是开源的。
>> 但是，我们不要把所有的 信贷从虚拟化。
因为发生的事情是有一个 很多栈和大量的软件
启用的技术 你被多快能够得到
与云计算热潮资源。
>> 所以，今天一个单一的应用程序或服务能 可以用以下任何运行时的
或数据库。
PHP，Python的，MySQL和Redis的，诸如此类的东西。
因此，有很多复杂的这个 堆栈数实际调出
单一的服务。
而伴随着的是，你有很多的 潜在的资源或基础设施
类型测试部署和基本 采取生产这些应用程序
你正在开发。
>> 特别是作为你的球队有 快把工作的这些应用程序，
有很多的 复杂性和挑战
这被带到保证 在cycle--基本应用
开发周期，是 居然成功了。
因此，事实上，你的应​​用程序 是在本地工作在本地虚拟机
并不能保证你的同事 将会期望相同的结果。
>> 而当运营团队 参与拍摄你有什么
并部署它在生产中 规模，也不能保证
那这实际上会发生。
因此，这给我们留下了一个非常 big--了很多问号，
其实很多的挑战 面对同样在天回。
这提醒我们， 航运业。
>> 因此，航运业 有很多的商品，
你可以在左侧看到。
和在右手侧， 有很多的，基本上，
如何运送这些货物。
而会发生什么一对夫妇 人走到了一起，说：
我们需要规范如何 我们实际上把那些货。
只听轰的一声，你有 联运运输集装箱。
>> 因此，他们同意对最 常见的尺寸为容器。
如何处理它们。
你需要什么确切的方法 加载它们和它们卸载。
因此，真正 帮助航运业。
现在，90％以上的重点运输 全球正在使用的容器。
这绝对下降 费用以及
损害赔偿因运费。
>> 因此，我们采取了同样的模式，我们 使用两个应用程序开发软件
架构，在这个意义上 该集装箱
把虚拟化上一级。
因此，与其这样做， 在硬件一级，
它变得更加的操作的 系统级的虚拟化。
>> 同时，我们也通过提供每一 在自己的轻量级应用，
孤立的，可运行，并 便携，最重要的是，
一种方法来实际打包 它需要执行所有功能。
的任何地方，可以运行。
所以，不管你运行它 本地开发环境，生产
环境，暂存或测试。
不管是什么根本 基础设施是存在的，
你有一个职能工作的应用程序。
>> 所以，这也正是基本上是什么 集装箱做了这个问题。
他们通过解决这一问题 包装它以这样的方式
它可以保证它的部署 成功，无论它生活的地方。
所以，如果你打算 像鲍勃它仍然确定。
如果你困惑与我在说什么， 我将要阐述的。
>> 那么，如何泊坞窗本身 适合在这幅画？
所以多克是一个开放的平台， 轻松，强调轻松，
建船，运行， 轻巧便携的自我
足够的应用程序容器的任何地方。
如果你从这个拿东西所以， 通话，请按以下。
>> 如果你有你的应用程序运行 在当地，你开发它
在使用泊坞平台，预计 它被成功部署。
不管是什么 底层基础设施。
所以，如果你有一个泊坞窗 容器和它的工作，然后
只要有一个泊坞窗 发动机上的其它side--
如果你的操作基础设施 可使用任何云，无论
是AWS，或谷歌的，还是微软， 或任何公共云，
或者你自己的云，或者打开的堆栈 云或本地环境。
>> 如果你有一个引擎 运行时，该装置
这将是 成功部署在那里。
这将运行 完全一样的行为
因为你的架构它是。
因此，如果我们看看at--我要去 经过实际是什么
在多克尔的主要组成部分。
>> 因此，发动机是泊坞窗的核心。
它是大脑的。
它编排建筑，航运， 部署和管理
容器自身。
我会来挖成什么引擎做 在一第二的更多细节。
基本上，因为医生建 围绕着客户端服务器架构，
因此为了与互动 引擎，你需要某种形式的一个客户。
>> 图像是在模板中 其中集装箱从构建。
所以图像基本上都是 只是静态文件。
模板和集装箱 其实是什么
在运行时运行 是服务应用程序
或做一些与数据。
>> 注册人称为的问题 如何实际分发映像。
所以，如果你需要共享图像 你的工作到您的同事
或老年退休金计划的团队，你 使用注册表使用它。
你可以下载一个开源 版本的它的泊坞制作
和开源。
>> 或者你可以使用泊坞帮助， 这是云版本
推拉图像在那里。
这是一个巨大的东西。
因为有一个庞大的 各地泊坞窗的生态系统，它的
真正大量使用的枢纽。
>> 所以，在这里总结一下，这是怎样的 简约的码头工人的工作流客户端。
你与主持人进行互动，在 这种情况下，它的码头工人守护进程。
这是同样的事情引擎。
你不喜欢命令 泊坞建设，拉，跑。
和发动机本身的推移 而做这些事情。
>> 因此，无论是与之交互 注册地拉这些图片
和图像的层。
无论您是否要部署，运行 集装箱，杀了他们，把他们下来，
诸如此类的东西。
因此，这总结了工作流程 所有这些组件。
>> 所以，如果你把每 组件本身。
因此发动机，它只是一个守护进程。
那种它会发挥它支持 它在Linux因为它
需要一定的Linux内核的功能。
但是，Windows正在工作 在做同样的事情。
它应该得到支持 由Windows服务器2016年。
>> 如此，同样，与责任 发动机，或者是，建立图像。
从泊坞窗拉图像 集线器或您自己的注册表。
如果你用这些图片做 或者你创建一个新的形象，
你可以把这些回注册表 将它们分发到其他球队。
>> 并试图遏制在本地 和管理容器生命周期
本地。
它是围绕HTTP REST API。
因此从技术上讲，你可以 编写自己的客户端
只要使用HTTP，这是一个很 标准的机制来谈谈发动机
和许多其他服务。
你可以从看 在这里，无论
什么样的基础设施 是的，只要你can--所有
你需要的是一个操作 系统，Linux的具体。
>> 你可以安装泊坞引擎 在此基础之上，并运行它
和它编排，基本上 所有这些应用程序的一个，两个，
三是实际的容器。
所以这是引擎。
正如我前面提到的，因为 你需要与引擎交互，
还有的客户端。
>> 但实际上当你安装 泊坞窗，它附带了它。
因此，它被安装， 所以这是一个单一的二进制。
你可以做本地电话 您多克尔引擎。
或远程调用的远程发动机。
它不使用HTTP，作为 我前面提到的。
有被称为GUI客户端 Kitematic从泊坞窗。
而且肯定有 其他很多乡亲
谁正在建设大量的 图形用户界面，基本上实现
某些HTTP调用来谈谈发动机。
>> 只是一些示例命令。
如果你这样做码头工人的版本，它会 显示您的客户端版本，以及
服务器版本。
如果你这样做码头工人的信息它会 告诉你所有的信息
有多少集装箱正在运行 或创建的，你有多少图像有，
等等等等。
>> 在这里，我有，在旁边 去年中，我有医生跑。
所以这就是我是如何实际 创建容器。
而我给它呼应的Hello World 睡一秒钟，诸如此类的东西。
你可以看到 结果。因此，它是持续的。
而类似Linux的ps的，你可以看到 所有的过程，并且在此情况下，
所有正在运行的容器。
这一个指回 容器我刚刚创建。
>> 所以，这是因为真正重要的， 喜欢，它可以是一个有点混乱。
所以图像是只读 采集的文件，对不对？
他们就是我们的容器是基于。
但他们只是只读的。
所以，你与基础映像开始。
它往往模仿操作系统状，所以 Ubuntu的，CentOS的，诸如此类的基本图像。
然后你就开始建设之上 如此，某些层，这将弥补
您的高端形象，这里到底的结果。
>> 并且其中的每个层 应该有一个父图像
它引用时， 其实想创建。
他们是不可改变的，在这个意义上 因为他们是只读的，
你不能真正 对其进行更改。
您可以使用它们来创建一个 从图像中，容器
会调用所有后续 所需的图像下面。
>> 您可以更改 到一个不同的层，
这是一个重写层，我会 在第二个谈。
但每个这些层的 永远不会改变。
基本的图像使用的东西 所谓的联盟文件系统，UFS。
而有不同的存储 后端利用该技术。
而这是什么意思是，它 汇集了不同的文件系统
使它们看起来像一个。
>> 所以，你实际上可以从 应用的角度，
你有一个观点，即节目的顶 所有的不同的文件系统所需
该应用程序来运行。
但它们实际上，在此， 他们实际上是在不同的地方
和正在使用的 其他容器为好。
>> 因此，大家可以看到在这里 如果我们开始与守护形象
为基地的形象，然后 我们进去，并添加[？ emacs的？]
然后是另一层。
然后放入阿帕奇。
这是另一层。
然后我们花费 容器从。
每个这些图像， 每个这些层，
是不同的，并且可以是 其他容器重复使用。
>> 如果你看一下容器本身， 他们在某种程度上像虚拟机一样，
但不处理的相同时间。
所以，他们没有，在技术上， 它们下面的完整的操作系统。
他们使用单内核 主机操作系统。
他们建立在此之上。
他们模仿他们如何看。
他们模仿他们的根文件 操作系统的系统。
但他们实际上没有复制。
>> 代替具有不可改变的层，从而， 最后层，其是容器
本身，它是一个读写层。
这也运行过程 您的应用程序。
它依赖于基础层上。
每个容器 从图像创建。
这图像可以是单一的 层或多层图像。
>> 我想，这里要注意 该码头工人大量使用，
或者是基于复制的写机制。
所以说，实际上，如果你不 进行更改到容器上，
它不会采取额外的空间。
所以这基本上是你如何 总结副本上写。
这将明确加快 开机时间容器。
因为如果你没有将 变化到容器上，
它是利用了什么已经存在。
>> 那么，它是如何实际工作。
它的一部分的样子，现在，它 使用至少两个关键的内核
特征。
这基本上是什么 创建隔离的那个水平
对于容器本身。
这些特征是 命名空间和cgroup的。
因此，命名空间是一种方法， 创建隔离的资源，
使容器本身内， 只有你能看到一定的资源。
比如网络接口 或者某些用户或诸如此类的东西。
>> 而这些仅仅是可见的，只有 在容器内进行访问。
cgroup中在另一侧限 你如何使用这些资源。
的CPU，存储器和磁盘。
当你能进去，我 是指那些实际上是
被开发by--的功能 他们是Linux内核的一部分。
因此，他们并没有彻底改造 或由码头工人重新创建。
泊坞窗使用它们。
>> 什么医生真的 这里实际上是它
精心策划创作 名称空间每个容器
和创建的cgroup以便它 可笑容易创建容器
使用这些功能。
当然，前面我所描述，联盟 文件系统和副本上写真正
帮助的速度和盘 利用容器。
>> 一旦你得到你的 各地码头工人手中，
你会看到它的速度有多快 实际上旋转起来的容器和撕裂
下来。
所以，如果你可能会问，怎么能 你居然构建映像？
我们创造的过程构建映像 容器和更改，变更
他们，并承诺他们 入成为一个图像。
>> 所以这是一个鸡和 鸡蛋参考这里，
因为所有容器都 从图片和图像来
从承诺容器， 在大多数情况下。
有三个选项 创建图像。
我要说明 第一个和最后一个。
您可以手动或者 去运行容器
做出这些变化， 就像你会做任何VM
或任何操作系统，如 安装新的二进制文件，
添加文件系统，以及诸如此类的东西。
>> 然后你退出，因为 你可以看到在那里。
我离开我的容器。
然后我做泊坞提交。
而我犯了。
你可以在这里看到，数 只是一个UUID，或前12
的UUID的比特。
或字节的UUID的。
然后，我打电话是我的形象。
所以，现在泊坞窗照顾 记录一切，我做到了
并创造了新的 基于该图像。
>> 我不打算谈压缩包， 但有一种方法可以得到一个单一的，
创建一个单一的，或者使一个单一 使用tar包层图像。
什么我要说说这 什么今天的主要使用，
是Dockerfile。
这在技术上是第一 一步一个码头工人本身的自动化。
所以Dockerfiles事情，你是 会看到很多GitHub的回购
今天。
它基本上只是一个 描述文本文件
究竟该如何建立形象。
>> 而对于每一行，它实际上创造 容器，执行该线，
提交该容器成 新形象，而你，基本上，
将其用于所有的后续操作 直到你到最后的图像。
这基本上是 最终目标这里，结束。
而当你后，你exec-- 写你的Dockerfile，这
是纯粹的文字，你做一个泊坞窗 构建和图像的名称。
>> 而你指向的是 其中Dockerfile是。
你可以期望看到我的形象 作为一个形象，你在本地。
所以，这只是一个视觉 什么的例子不胜枚举。
你开始与基础映像。
您运行到一个容器 不改变基本图像本身。
而是创建 在它的上面重写层
在这里所做的更改， 在您提交
你重复这个过程，直到 你会得到你的最终图像。
>> 而通过这样做，每隔构建 进程可以使用相同的层
和same--基本 泊坞窗缓存这些层。
所以，如果我做的完全相同 过程中，而是安装PHP，
我安装Python。
这将使用Apache和Ubuntu。
这样一来，你就可以利用你的磁盘。
它利用高速缓存 和可用的图像那里。
>> 最后一块是书记官 是你如何分配你的图片。
而且，正如我前面提到的， 有一个云版本的它，
这是泊坞枢纽。
你可以去探索 很多，基本上
这是一个公开的SAS产品， 你仍然可以有私人的图像，
但是有很多的公共图像。
它实际上是无限的，你可以 推无限的公众形象出现。
这是你怎么能 与您的团队协作。
>> 你可以将它们指向你回购 他们可以下载它，或者你的形象
他们可以下载它。
因此，足够的谈话。
谁愿意看到一些演示真正的快？
好吧。
所以在这里我有。
CA你们看到我的屏幕？
好吧。
>> 所以，我有泊坞运行在这里，所以我 可以检查it's--这是版本
泊坞窗的的运行。
可以做多克的信息。
检查所有有多少信息 图像他们有，等等。
泊坞PS，没有什么运行。
这些连接在一起。
>> 所以，我想要做的第一件事就是秀 你如何可以轻松地运行的容器。
因此，关于美 医生来说，如果它实际上
没有找到本地的图像， 默认情况下，会谈医生集线器
并试图找到它 和下载它。
因此它包括一个多克 拉命令，自然。
>> 所以，如果我做的一个码头工人来说，你好世界。
因此，首先它是怎么回事 试图找到它。
否则，你可以在这里看到， 它找不到本地。
现在，它只是拉着两层 ，使得该图像，我跑了。
该HELLO-世界只是基本 输出，你做了什么。
因此，这是最简单的， 一个最简单的例子。
所以，其实我只是跑和 终止容器真正的快。
>> 如果我想，以run--和的方式，如果 我想的是，只要你知道的时候，
这是需要多长时间来 实际上旋转起来，并包含它。
我们测量它以毫秒为单位。
所以，你可以看到有多少这样能 真正帮助你不仅在测试中，
而且，即使部署。
所以这是一个简单的笔记上。
接下来的事情我是 要做的实际上是
跑我已经准备的图像。
因此，泊坞窗运行。
-d仅仅是一个标志，告诉 它在后台运行。
和-P分配特定端口。
因为默认情况下， 容器是孤立的，
所以你必须明确指定 如何可以访问它们。
在这种情况下，我告诉泊坞窗 映射一个随机端口的主机上
内指定端口 容器本身。
而这基本上是哪里image-- 希望这是正确的。
>> 因此，它的并行下载每个 这些层中，你可以在这里看到。
那些的各层使 我建的高端形象。
这将需要一秒钟。
瞧。
>> 所以，现在如果我做一个泊坞窗ps的，我应该 看到正在运行的东西。
我应该看到的ID，图像 这是基于关闭，
并且命令被执行。
以及如何访问它 基本上你去到该端口。
所以我要去用于：此 是我在AWS上运行它。
我要去32769。
哎呀。
现在我们开始。
>> 因此，这其实只是 Web服务，显示
该容器它正在从提供服务。
所以，你可以看到它 从容器a9f。
在这里，这是 容器的命名。
所以你们可以看到如何迅速 是实际上不仅拉也
部署该容器。
>> 现在，下一个步骤是 考虑Dockerfiles
以及我们如何真正 建立新的图像。
我只是去给克隆，一 样品根据先前Dockerfile
图中，一个Apache和PHP。
希望我记得我的回购协议。
>> 所以，我有我的库现在。
而且你会看到 这个有很多实际。
我没有安装树。
>> 所以基本上你会怎么看 你的源代码文档各地
它，然后一个Dockerfile上 如何真正打包。
所以，这只是一个示例PHP 呼应打招呼CS50。
>> 所以，如果我要运行它， 我会做搬运工的构建。
我必须先建立它。
我将它命名为demo_cs50。
而你需要一个标签，它也。
因此，让我们把它叫做v1的点缀。
因此，正如我前面所述， 我在做什么今天
是我告诉泊坞去使用 实际上that--，对不起，是我不好。
我们没有一起来看看 在Dockerfile本身。
因此，在这里唯一的东西 index.php文件以及自述文件
和Dockerfile。
>> 所以，如果你看看 在Dockerfile，所以它的
非常类似于 我前面所述。
它只是一堆 泊坞窗执行该步骤
通过建立和拆除容器 和 [？计数？]成的图像。
>> 基本上，你可以 see-- [听不清]它这里 -
但是这是从本地回购。
这将去抓住index.php文件。
所以，这是唯一的源代码， 实际上你的应用程序的一部分。
所有这一切基本上都是 操作系统管道，
获得正确的包和 Apache和PHP，以及诸如此类的东西。
但其实这是采取的index.php 并承诺将它放入容器，
到图像。
>> 所以，如果你继续运行的 命令通过执行以下操作，
它实际上going--， 这可能需要一点。
但愿它不会需要太长时间。
所以你可以看到的步骤。
我鼓励你去 回到家里今天和尝试。
而马诺将描述 究竟你做到这一点。
但它真的很棒，看看到底 发生了什么幕后。
但它的可笑容易建立 图像和使用泊坞部署它们。
>> 它采取了一下 比我预期的要长。
>> 让我们来看看，当你 - 冷却会发生什么。
因此，大家可以看到，每一个这些步骤 表示在Dockerfile线。
它表明在这里，它 成功建立了这个形象。
>> 所以，如果我做搬运工的图像，我要去 看到我所有的局部图像。
其中一人叫我 的用户名，和该图像的名称，
并且标签representing-- 主要是它的一个版本标记。
>> 所以，现在如果我想运行 它，我做搬运工运行。
而我只想做一个-d -P。做V1。
所以，我现在可以看到我有两个 容器运行，一个，我刚
创建和Hello 多克一个，我最后得到了。
>> 你可以在这里看到，它 其分配一个不同的端口。
所以，如果我去同一个IP，但它分配 不同port--希望我没有。
所以，现在这个应用程序 我刚刚部署。
>> 如果我想做出改变，我 可以快速编辑源代码
并做到以下几点。
让我们做你好哈佛。
所以，现在这是怎么回事 发生的是，我
要与标记它 不同version--哦，
不是这个guy--将其标记 不同的版本。
而你要 see--做你们的期望
它采取相同的时间量 建立它第二次还是没有？
所有的权利，任何人都知道这是为什么？
说出来。
>> 听众：[听不清]
>> NICOLA KABAR：它基本上我们 仅改变的稍后的步骤之一。
因此，它会使用 高速缓存和使用各个层。
这就是真正的一些 泊坞窗的杀手锏
它实际上是如何利用 并重接管
您的磁盘相同 准确的信息片段。
>> 因此，如果我们做同样的事情， 只花了几秒钟。
如果我们想的那么现在redeploy-- 我应该有三个容器。
但是这一个是 担任the--七分之一。
所以，现在是第三个容器中。
每个人都明白 我只是在这里做？
>> 所以，现在，如果你想分享这 容器真正的快与你的朋友，
你可以做搬运工推 容器的命名，希望。
所以，现在它要推 用于：我不是在这里签署。
对于那个很抱歉。
但我不打算现在解决此。
但基本上是一个命令 只是上升推。
而你将能够 看到它，如果你去泊坞枢纽
而你的，你登录 要能够看到它。
然后你可以只 指出谁是怎么回事
使用该图像的去拉。
他们可以使用它。
>> 就这样，希望 我种证明
它是多么容易与码头工人的工作。
而我只是要 还给马诺。
而且他会采取它从这里开始。
>> MANO MARKS：好吧 谢谢，谢谢尼科。
所以呢？
所以的事情之一我 想做的事放在一起
为什么这是一个important-- 为什么泊坞窗，为什么
容器是这样的 重要的新进展，
实际上做软件的新途径。
>> 还没等我做什么，我要去 只是介绍一些统计数据。
我不会阅读所有这些。
但是，这显示了你很多有关如何 流行的是在社区。
核心泊坞窗技术 都是开源的。
所以这是泊坞引擎，撰写， 群，一堆其他的东西
都是开源的。
我们有，我干了什么 说，1300贡献者。
您现在看到的，如果你看一下 职位空缺的数目，最后一次
我们看到，这是集团的43,000名工作 开口特别提到
熟悉泊坞窗。
数以百万计的图像有 被下载的泊坞枢纽。
而且，还有，更大量的统计。
>> 对于那些谁是好奇，它 最初是用Python编写的
然后改写成围棋。
而且它只有 打开source--这只是
被释放约2年半， 这意味着，在2和1/2年，
我们已经看到了大量的 生长和重要性的
这在社会上。
所以，我想谈 为什么一点点。
>> 所以，只是重申了一些 尼科的关键点，泊坞快。
它是便携式的。
这是重复的。
它建立了一个标准的环境。
>> 而what--这是我的蹩脚 杜绝巨石slide--什么
它帮助人们做的，这 很多软件产业
开始做的 21世纪初，是移动
从这些单片 单一的应用
在每一个依赖必须是 测试的整个应用程序收到
待部署，这 可能意味着一个网站
只得到了部署一次 每三个月，或更多，
到一个更服务 面向服务架构
或组件化的不同类型的 应用架构。
所以允许这些 样的架构
即利用 多克尔到在这三个运行
发展的主要领域，其中 正在开发编写实际的代码，
测试你的代码，并部署它。
>> 那么，为什么这很重要？
如果你A--让我举一个例子。
如果你是一个网站 设备的开发，你
开发这是基于该网站 大卫产生在这里的数据库。
对不起大卫，我给你打电话了。
如果你想部署 整个事情，你
有下一个传统的等待 整体软件开发
环境中，你必须要等待 直到他被与数据库进行
之前，你实际上可能使 任何更改到您的网站。
你不得不重新部署 整个应用这样做。
>> 什么泊坞窗可帮助你要做的就是每个 不同成分的人工作
并更新他们，因为他们去，只是让 确保该接口保持不变。
所以它做了什么 是它的转向人
从做这些庞大的单片 架构软件
每个月部署到连续 整合和持续发展
环境。
>> 现在，这是不是唯一的码头工人， 但泊坞窗使得它容易得多，
这意味着你基本上 不断部署。
我们谈论的企业是 部署面向公众的应用
成千上万的一天，因为次 他们看到的只是让价值
小的变化，而只要 因为它贯穿测试，
让它走出去投入生产。
尼科总是告诉我 早些时候，在许多环境中，
一个标准的生命周期 容器的单位是秒，
而在虚拟机 在几个月可能被测量。
>> 我想采取一个轻微 转在这里，因为我
在一个教育机构。
我想给怎样的一个例子 这部作品在一个教育研究
情况。
因此，有一个组织 所谓的生物箱。
生物箱做DNA 分析研究。
>> 现在，他们发现的是，当 一个researcher--而这是不
任何特定的故障 researcher--但是当
部署研究员 一种算法来分析，
在一个具体的方式中，DNA样品， 他们会写软件，
发布，也许到 GitHub上或其他地方，
然后将其完成。
>> 那么问题是，它 不一定再现的。
因为为了 了解软件，
他们将设置为 确切的开发环境
这是研究人员使用，通常 他们的膝上型计算机或服务器，或数据
中心发现他们使用。
因此，这是非常困难 重现的研究成果时，
分析DNA样本，以寻找 在像incidence--
比较心脏发作发病率 根据某些基因存在，
例如，或癌症风险，或 任何其他种类的东西。
>> 所以他们做了什么，而不是被 他们开始创建容器。
你可以去bioboxes.org， 这是一个伟大的组织。
而他们所做的是他们生产 基于研究的容器。
然后，每当有人向 在他们的样本，他们可以运行它。
它拥有所有的环境 运行该算法所需
和产生的结果。
而且他们发现，他们是 更可能与多
更快速地能 返回结果的人。
>> 而事实上，人们正在做什么 正在运行自己的分析对DNA，
发送，在以生物箱，和 那么生物箱只是需要的数据，
运行它针对各种 不同的容器
看到不同的结果 根据不同的研究。
所以这是一个非常强大的 方式，研究人员
可以使一个实例，它允许 其他人试图重现
结果。
>> 那么，你如何开始？
我们能很好地支持在Linux上。
所以，如果你想安装 Linux上的任何东西，
你用你的标准 包管理器安装。
如果您使用的是Debian的，它容易搞定。
CentOS是百胜。
Fedora的Red Hat是 rpm--我不记得了。
无论如何，它都在那里。
我们支持大量不同 Linux发行版。
您可以检查这些出。
>> 我们也有其他选择，所以你 可以运行在Mac或Windows。
现在尼科前面提到的那 它是只支持Linux操作系统。
这是真的，因为它 需要一个Linux内核。
但是，你可以在虚拟机上运行。
什么泊坞窗工具箱 的确，你可以下载，
它可以让你的虚拟机。
>> 所以，只是一个快速48 第二，我认为，下载。
你只要搜索泊坞窗 工具箱，将其下载到Mac，
这部分是 当然加快了，因为谁
想要观看一个下载信号？
标准的Mac安装， 然后你
去看看杰罗姆把他的密码。
这是非常令人兴奋的。
然后它会安装一个 一大堆的工具。
特别是它会 安装的命令行。
然后，你可以看到 杰罗姆测试他的形象。
>> 然后在此基础上， 你可以看到YouTube的
认为尼科有兴趣 星球大战的吉米金梅尔节目，
我认为艾伦。
我认为，最后一个是 从艾伦秀的剪辑。
>> 因此，泊坞窗工具箱不过来 多只泊坞窗机。
因此，泊坞窗机是 帮助的东西
您设置一个虚拟 机上的Windows
或Mac--您的Windows框或您的Mac box--并帮助你做配置，
>> 但它也带有 群和撰写，
其目的是为了帮助你要做大 您的应用程序的规模部署。
所以，如果你想管理 节点簇，
集群容器，撰写并 群是要走的路有关。
>> 当然，它带有 泊坞窗发动机和Kitematic，
这是本桌面GUI。
我还要提到泊坞注册， 其中不包括在工具箱，
但它是一种让你运行你自己 像泊坞窗泊坞窗图像登记
集线器，但你也可以只使用 码头工人枢纽，以此来做到这一点。
>> 而且，剧情转折，你看到 它运行在容器中。
这就是我们是 销售我们的幻灯片。
这整个演示文稿 实际上是一个HTML幻灯片平台。
并且它在运行中的 容器，你可以得到by--
>> NICOLA KABAR：是的，所以它的 我的最大运行全职。
而我从它呈现。
你以后就去做泊坞窗 您安装工具箱。
你可以做一个泊坞窗运行 并得到它，并使用滑动。
>> MANO标志：就是这样。
因此，我们感谢各位的光临。
我们很高兴地回答问题。
我要提到任何人之前， 叶有T恤在那边。
对不起任何人谁在看着 本上Livestream或视频，
但我们码头工人的T恤在那边。
我们知道泊坞的学生， 在我的经验，
教授也喜欢免费的衣服。
>> 因此，感谢各位的光临了。
而按照我们的Twitter 如果你想，还是没有。
我不在乎。
也跟着多克在Twitter上。
这也很有趣。
然后，就是这样。
Docker.com。
谢谢。
>> [掌声]