Introducing PWK (play with K8s)

It’s been a while since we wanted to extend PWD to other platforms and help other communities to learn and get started as easy as it is with Docker today thanks to it’s playground. PWD is currently being used for different things such as:

  • Try new features fast as it’s updated with the latest dev versions.
  • Setup clusters in no-time and launch replicated services.
  • Learn through it’s interactive tutorials (training.play-with-docker.com).
  • Give presentations in conferences or meetups.
  • Allow to run advanced workshops that’d usually require complex setups.
  • Collaborate with community members to diagnose and detect issues.

It’s our pride to present PWK (http://play-with-k8s.com), our first iteration of a fully functional Kubernetes playground. It wasn’t easy to put all the pieces together and adapt our strategy to make it work with K8s, but after some efforts and help from other OSS projects, we were able to get a simple version working which we think it’s the first step towards a more mature product. At the same time we came across the following twitter thread (https://twitter.com/chuhnk/status/881405640509460480) which just confirmed our thoughts about the fact that it’d be extremely useful to have a solution for this.

Ok, so in order to get started head to the PWK website, click in the New Instance button and follow the instructions in the terminal to setup a new cluster in seconds. You should get a terminal similar to this one:

As you can see, we’re leveraging kubeadm (https://kubernetes.io/docs/setup/independent/create-cluster-kubeadm/) and Weave NET (https://www.weave.works/docs/net/latest/kube-addon) to help you bootstrap the cluster; you can use ctrl + insert and shift + insert to copy/past the commands respectively. Additionally, we’ve added an optional step to deploy the K8s dashboard (https://github.com/kubernetes/dashboard) so you can get started much easier.

After running the last command, a small badge (left image) should appear at the top which should take you to the deployed dashboard. If for some reason it’s not working, make sure to verify that your cluster is healthy by running kubectl get nodes and verifying that all your nodes are in state Ready.

The most important thing as always, is that the project is entirely open source and can be hosted in any cloud provider. You can find the code for PWK in the following branch (https://github.com/play-with-docker/play-with-docker/tree/k8s). Any contributions, suggestions or ideas are well received and more than welcome.

The PW[D,M,K] team.