本文是d4d系列的第9篇,在这一篇中给大家介绍一个学习Docker最为快捷高效的方式,你不需要自己搭建环境,也不用担心把自己的开发环境搞乱,你需要的只是一个浏览器,就可以立即开始学习Docker的常用命令;你甚至还可以一键部署一个5台服务器节点的docker swarm集群,体验容器编排平台的能力从来没有这么简单过。

这个神奇的网站就是 PWD ,全名:Play-with-docker.cn (翻译过来应该叫 Docker游乐场,不过我还是给他起了一个中规中矩的名字:Docker实验室,免得老板看到你打开这个网站觉得你不干正事儿:)

地址:http://play-with-docker.cn

废话少说,来一段3分钟的视频来了解一下这个网站都能做些啥

Play-with-Docker.cn 其实是 Play-with-Docker.com 的中文汉化版本。在2017年的DockerCon上, Marcos Liljedhal 和 Jonathan Leibiusky 两位工程师展示了他们自己Hack出来的一个小玩具,可以允许你在浏览器里面直接创建服务器,运行docker命令。这个小玩具在DockerCon上引起了轰动,很多人在会后开始使用Play-with-Docker.com 学习Docker技术,也有很多技术培训讲师使用它在各种会议上进行演示,大家都觉得非常的方便。因为这样一个沙盒环境允许你快创建和销毁环境,不用担心把自己的电脑搞乱。但是,对于中国的开发者来说就没有那么幸福了,因为大家都指导的原因,PWD在中国的网络中基本上是不可用的。为了能够帮助到中国的开发者使用这个神奇的网站,LEANSOFT的团队对这个工具进行了本地化(汉化+资源本地化),确保中国的开发者可以获得与全球的开发者一致的体验,当前 Play-with-Docker.cn站点托管在微软Azure云北京世纪互联,为大家提供快速的访问体验。

不要小看这个玩具,用起来其实是很爽的

1. 秒级创建服务器节点:可以点击 “创建新实例”创建服务器节点,这个服务器节点其实是使用DIND(Docker in Docker)技术模拟出来,也就是我们在一台主机上运行多个docker容器,将每个容器当作服务器给你用。所以这个节点的创建速度超级快。
2. 浏览器里面的ssh客户端:你不用安装ssh工具,就算使用windows也可以很方便的用浏览器直接连接到节点的ssh服务器上;对于新手来说,安装一个ssh客户端并搞明白怎样连接服务器恐怕就能吓跑一批人了。
3. 自动打开端口:运行docker应用后,如果容器需要开放外部端口,pwd会自动将端口转换成url暴露给用户内部,这样服务器防火墙不必进行任何修改,任何端口都可以转换成通过80或者443访问的url映射。

4. 一键搭建集群:容器编排是个很有意思的东西,相信每个玩docker的小伙伴都想尝试一下,但是哪有那么多资源,而且搭建也很麻烦。有了PWD这些都不是事儿,直接选择你需要的节点数和组合,一键搞定。

是不是很有意思?马上登录 http://play-with-docker.cn 一起玩Docker吧。如果你希望了解其中的原理,也欢迎你通过我们的github地址获取源代码,和我们一起hack!

https://github.com/lean-soft/play-with-docker

相关文章:


请关注微信公众号 【devopshub】,获取更多关于DevOps研发运维一体化的信息

d4d#9 玩Docker只要浏览器就够了,PWD是个神奇的网站的更多相关文章

  1. 用前端姿势玩docker【四】基于docker快速构建webpack的开发与生产环境

    目录 用前端姿势玩docker[一]Docker通俗理解常用功能汇总与操作埋坑 用前端姿势玩docker[二]dockerfile定制镜像初体验 用前端姿势玩docker[三]基于nvm的前端环境构建 ...

  2. 用前端姿势玩docker【五】快速构建中类Unix系统与Windows系统的差异化处理

    目录 用前端姿势玩docker[一]Docker通俗理解常用功能汇总与操作埋坑 用前端姿势玩docker[二]dockerfile定制镜像初体验 用前端姿势玩docker[三]基于nvm的前端环境构建 ...

  3. 【Howie玩docker】-windows下玩docker

    Windows下安装toolbox一直没成功,于是投机取巧,用虚拟机手工打造玩docker的方法. 步骤: 安装虚拟机,安装centos 在win下建立共享文件夹,假如是 f:/share 在cent ...

  4. 好久没玩docker了,温下手

    好久没玩docker了,温下手 安装 Docker Docker 软件包已经包括在默认的 CentOS-Extras 软件源里.因此想要安装 docker,只需要运行下面的 yum 命令: yum i ...

  5. 【Howie玩docker】-命令行只显示-bash-4.1#

    灵雀云上面用docker建了个centOS的实例,首个免费,正好当云主机来玩. 但是,打开有个问题,命令行不显示当前用户和路径. 只显示: -bash-4.1# 简单,配置文件不全而已. 下面对其重新 ...

  6. 用前端姿势玩docker【一】Docker通俗理解常用功能汇总与操作埋坑

    前言 首先一句话表达个人对docker的理解:与传统虚拟技术基于硬件及物理资源的虚拟化相比,Docker更加轻量化,docker为基于操作系统或内核级别的虚拟化,并且提供了从各种机制与操作以满足从开发 ...

  7. docker 会这些也够

    $ sudo systemctl start docker $ sudo systemctl stop docker $ sudo systemctl restart docker If you wa ...

  8. 【Howie玩docker】-Centos 7 docker 启动容器iptables报No chain/target/match by that name

    重启了一下服务器,以前能运行的docker网络应用都不能正常开启了. 因为用的是centos7,所以猜测有可能是iptables的问题. docker start 或者run 后总是提示类似的错误: ...

  9. 【Howie玩docker】-使用mono编译c#程序

    根据前面的方法,在windows和Linux共享文件夹,然后就可以开发了! Start up an Ubuntu container $ docker run -it ubuntu bash Upda ...

随机推荐

  1. [SQL case when的两种用法]

    当我们需要从数据源上 直接判断数据显示代表的含义的时候 ,就可以在SQL语句中使用 Case When这个函数了. Case具有两种格式.简单Case函数和Case搜索函数. 第一种 格式 : 简单C ...

  2. C++ 排列最优解算法思想

    枚举全排列 #include <iostream> #include <cstring> #include <string> using namespace std ...

  3. Python之线程

    操作系统线程理论 线程概念的引入背景 进程 之前我们已经了解了操作系统中进程的概念,程序并不能单独运行,只有将程序装载到内存中,系统为它分配资源才能运行,而这种执行的程序就称之为进程.程序和进程的区别 ...

  4. java集合小知识的复习

    *Map接口 Map<k,v>接口中接收两个泛型,key和value的两个数据类型 Map中的集合中的元素都是成对存在的每个元素由键与值两部分组成,通过键可以找对所对应的值.值可以重复,键 ...

  5. Django(博客系统):文章内容使用django-ckeditor、文章简介使用django-tinymce

    文章内容使用django-ckeditor 1)安装django-ckeditor pip install django-ckeditorpip install Pillow 2)在settings. ...

  6. url的解码方式

    #coding:utf-8 import urllib legal_person_string = "%E6%B3%95%E5%AE%9A%E4%BB%A3%E8%A1%A8%E4%BA%B ...

  7. javaIO操作之字节输入流--InputStream

    /** *<li> InputStream类中定义的方法: * <li>读取的数据保存在字节数组中,返回读取的字节数组的长度:public int read(byte[] b) ...

  8. 初探java对象比较

    判断两个对象的属性值是否相等的方法, class Book{ private String title; private double price; public Book(String title, ...

  9. [C#]使用 Jenkins 为 .Net Core 实现持续集成/部署

    在前后端分离开发的项目当中为了避免重复构建发布,我们需要部署一个持续发布环境,而目前的开发环境服务器都是基于 CentOS 的,因此每次在本地发布之后还需要打包,上传,部署,十分繁琐.故这里采用了比较 ...

  10. [LeetCode] Word Abbreviation 单词缩写

    Given an array of n distinct non-empty strings, you need to generate minimal possible abbreviations ...