免费学习 Docker 的最佳方法：Play-with-docker（PWD）
PWD 像是一个 Docker 游乐场，用户在几秒钟内就可以运行 Docker 命令。 还可以在浏览器中安装免费的 Alpine Linux 虚拟机，然后在虚拟机里面构建和运行 Docker 容器，甚至可以使用 Docker 集群模式创建集群。
Docker
PWD 像是一个 Docker 游乐场，用户在几秒钟内就可以运行 Docker 命令。 还可以在浏览器中安装免费的 Alpine Linux 虚拟机，然后在虚拟机里面构建和运行 Docker 容器，甚至可以使用 Docker 集群模式创建集群。
![](/data/attachment/album/201708/22/141737c0buuo823dfyzxoz.jpg)


去年在柏林的分布式系统峰会上，Docker 的负责人 [Marcos Nils](https://www.twitter.com/marcosnils) 和 [Jonathan Leibiusky](https://www.twitter.com/xetorthio) 宣称已经开始研究浏览器内置 Docker 的方案，帮助人们学习 Docker。 几天后，[Play-with-docker](http://play-with-docker.com/)（PWD）就诞生了。


PWD 像是一个 Docker 游乐场，用户在几秒钟内就可以运行 Docker 命令。 还可以在浏览器中安装免费的 Alpine Linux 虚拟机，然后在虚拟机里面构建和运行 Docker 容器，甚至可以使用 [Docker 集群模式](https://docs.docker.com/engine/swarm/)创建集群。 有了 Docker-in-Docker（DinD）引擎，甚至可以体验到多个虚拟机/个人电脑的效果。 除了 Docker 游乐场外，PWD 还包括一个培训站点 [training.play-with-docker.com](http://training.play-with-docker.com/)，该站点提供大量的难度各异的 Docker 实验和测验。


如果你错过了峰会，Marcos 和 Jonathan 在最后一场 DockerCon Moby Cool Hack 会议中展示了 PWD。 观看下面的视频，深入了解其基础结构和发展路线图。






在过去几个月里，Docker 团队与 Marcos、Jonathan，还有 Docker 社区的其他活跃成员展开了密切合作，为项目添加了新功能，为培训部分增加了 Docker 实验室。


### PWD: 游乐场


以下快速的概括了游乐场的新功能：


#### 1、 PWD Docker Machine 驱动和 SSH


随着 PWD 成功的成长，社区开始问他们是否可以使用 PWD 来运行自己的 Docker 研讨会和培训。 因此，对项目进行的第一次改进之一就是创建 [PWD Docker Machine 驱动](https://github.com/play-with-docker/docker-machine-driver-pwd/releases/tag/v0.0.5)，从而用户可以通过自己喜爱的终端轻松创建管理 PWD 主机，包括使用 SSH 相关命令的选项。 下面是它的工作原理：


![Play With Docker](/data/attachment/album/201708/22/141830o5beyvabi2i161w2.gif)


#### 2、 支持文件上传


Marcos 和 Jonathan 还带来了另一个炫酷的功能就是可以在 PWD 实例中通过拖放文件的方式将 Dockerfile 直接上传到 PWD 窗口。


![](/data/attachment/album/201708/22/141838yg4jvqggv4vddvcg.gif)


#### 3、 模板会话


除了文件上传之外，PWD 还有一个功能，可以使用预定义的模板在几秒钟内启动 5 个节点的群集。


![Play with Docker](/data/attachment/album/201708/22/141901xw8q5mqu07m1r8wb.gif)


#### 4、 一键使用 Docker 展示你的应用程序


PWD 附带的另一个很酷的功能是它的内嵌按钮，你可以在你的站点中使用它来设置 PWD 环境，并快速部署一个构建好的堆栈，另外还有一个 [chrome 扩展](https://chrome.google.com/webstore/detail/play-with-docker/kibbhpioncdhmamhflnnmfonadknnoan) ，可以将 “Try in PWD” 按钮添加 DockerHub 最流行的镜像中。 以下是扩展程序的一个简短演示：


![Play with Docker](/data/attachment/album/201708/22/141902r7794c409jbk0c7m.gif)


### PWD 培训站点


[training.play-with-docker.com](http://training.play-with-docker.com/) 站点提供了大量新的实验。有一些值得注意的两点，包括两个来源于奥斯丁召开的 DockerCon 中的动手实践的实验，还有两个是 Docker 17.06CE 版本中亮眼的新功能：


* [可以动手实践的 Docker 网络实验](http://training.play-with-docker.com/docker-networking-hol/)
* [可以动手实践的 Docker 编排实验](http://training.play-with-docker.com/orchestration-hol/)
* [多阶段构建](http://training.play-with-docker.com/multi-stage/)
* [Docker 集群配置文件](http://training.play-with-docker.com/swarm-config/)


总而言之，现在有 36 个实验，而且一直在增加。 如果你想贡献实验，请从查看 [GitHub 仓库](https://github.com/play-with-docker/play-with-docker.github.io)开始。


### PWD 用例


根据网站访问量和我们收到的反馈，很可观的说，PWD 现在有很大的吸引力。下面是一些最常见的用例：


* 紧跟最新开发版本，尝试新功能。
* 快速建立集群并启动复制服务。
* 通过互动教程学习： [training.play-with-docker.com](http://training.play-with-docker.com/)。
* 在会议和集会上做演讲。
* 召开需要复杂配置的高级研讨会，例如 Jérôme’的 [Docker 编排高级研讨会](https://github.com/docker/labs/tree/master/Docker-Orchestration)。
* 和社区成员协作诊断问题检测问题。


参与 PWD：


* 通过[向 PWD 提交 PR](https://github.com/play-with-docker/) 做贡献
* 向 [PWD 培训站点](https://github.com/play-with-docker/training)贡献




---


作者简介：


Victor 是 Docker, Inc. 的高级社区营销经理。他喜欢优质的葡萄酒、象棋和足球，上述爱好不分先后顺序。 Victor 的 tweet：@vcoisne。




---


via: <https://blog.docker.com/2017/07/best-way-learn-docker-free-play-docker-pwd/>


作者：[Victor](https://blog.docker.com/author/victor_c/) 译者：[Flowsnow](https://github.com/Flowsnow) 校对：[wxy](https://github.com/wxy)


本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出

