Victor Coisne

Highlights from the DockerCon 2015 Hackathon

Victor Coisne

During the weekend before DockerCon, over 250 people participated in a 24-hour Docker-centric hackathon. Big thanks to Rancher for sponsoring the hackathon and to Microsoft for sponsoring the DockerCon Street Fighter Tournament. Also, thank you to all of the participants who made this event full of learning, hacking and fun! Click here to view all the photos from the event.

The following tweet quite nicely summarizes how we feel about the hackathon and the incredible quality of the submissions!



Below are all of the hackathon submissions with the three winning projects featured at the top.

Top 3 Projects from DockerCon 2015 Hackathon


1. Docker Cortana Client by Haishi Bai and Dan Fernandez

In their own words:

Run Docker client commands using Cortana voice commands. 



2. Pollendina PKI by Jeff Nickoloff, Dário Nascimento, Jason Huddleston, Madhuri Yechuri, and Henry Kendall

In their own words:

Pollendina is an X.509 identity provisioning service designed to simplify mutual TLS authentication for container-deployed microservices. Pollendina helps you provision your public key infrastructure as easily as you provision containers. The project is composed of an API for integration with your existing scheduling / deployment infrastructure, and a simple microservice (client) integration script. With Pollendina your secret material never leaves the container where it is generated, and clients can retrieve signed certificates with sub-second latency. Pollendina is fully open source (MIT) and available for download on Docker Hub.



3. Lightning Kite by Fabrizio, Toni, Tim, Iqbal, Jochen, and Terry 

In their own words:

“The project aims to change Kitematic’s backend, from the current boot2docker implementation to use docker-machine.  The user will have a range of choices for preferences, to enable machine drivers, and to setup them before launching a container.”



Street Fighter Tournament Winners


Here is a list of all the projects that were submitted during the DockerCon 2015 Hackathon:

Docker Dependencies by Ramesh Thummalapenta

In their own words:

“DockerDeps project allows partial build and deployment of docker images based on code change lists from SCM, the parent/child dependency matrix and the deployment definitions.  It also allows dynamic generation of orchestration flows (run deck, puppet, chef, ansible) that will determine and redeploy the containers based on recent code change lists.   Based on a highly pluggable model (with Plugins for SCM, Build tool and orchestration), newer SCM/Build/Deployment mechanisms can be adopted easily without lot of code changes.”

Benchrock by Willy Kuo, Zoe Peng, Josh Young
In their own words:

“We’ve build a simple benchmark tool to make benchmark easier. first add some images for some web framework , and use docker-machine deploy to different services providers. Finally, generate a bar chart to see the difference between frameworks and service providers.   “I’d like to build a simple tool to make benchmark easier. I plan to build the images for some common benchmark tools (ex.wrk). Build some example for some web frameworks and some databases. So that I can use a simple yml file to setup my benchmark plan across multiple services provider (AWS, Digital Ocean, Azure) and then run it by something like `benchrock up`. The yml should look like:   benchmark: wrk targets: – flask-example – rails-example – python-example – go-example – node-express-example machines: – mymachine1 – mymachine2 – mymachine3   Benchmark & targets should be the images on Docker Hub. Hosts should be the machine name listed in the docker-machine.”

Distributed Computing Platform based on Rancher by Guillaume Simon
In their own words:

“A grid computing platform based on Rancher.   Rancher to easily make any docker-ready machine part of a dedicated pool running for specific grid-computing software (projects built for the platforms follow its specs and API to be docker/rancher grid-friendly)   The idea that drives the project: have employees machines available anytime to run CPU intensive projects of our company, especially video conversion. The implementation on the platform is made here with a video conversion tool that will split the video video source in as many chunks as there are workers available on the platform for this project, using proper ffmpeg segmentation feature.   “1 tool on the plaftorm = 1 dedicated Rancher instance started on the go”   The platform is for “human”, but because it is backed by Rancher, public cloud based machines can be started in case “workers” are missing for a task.”

Docker for iOS app dev by Jeff Kingyens
In their own words:

Build and run iOS apps using the docker tool suite. We implemented a docker remote API that talks directly to the Xcode build tools. We plan to support registries in the future as well as docker-compose and docker-machine.

Open Source Delivery Kit on Docker by Shunjiro Yatsuzuka
In their own words:

Now, C/I is getting popular, but, in order to have C/I environment. We have to set up lots of software. We may be able to use cloud service for some of them, but I thought it would be nice if we have a single docker image which holds all of the necessary components for C/I, such as Repository, BTS, Jenkins and LDAP.   “Open Source Delivery Kit” is a toolkit for continuous integration which can run on Docker engine. And also, I added OpenLDAP because some software require user setup redundantly. This toolkit is independent Docker pack, so it can work on the computer which isn’t connected with internet. It might bring about benefit to some projects from the security point of view.   This toolkit is composed of pure OSS, and also its source codes, namely Dockerfile and related Chef recipes are also distributed. So anyone can use it without charge, can get C/I environment with just 2 commands, “docker pull” and “docker run”, and can customize it as you like.   -Bug Tracking System (Redmine) -Repository (Subversion) -Orchestration Tool (Jenkins) -LDAP (OpenLDAP)

Continuous Dockery by Nikhil Vaze and Tanay Nagjee
In their own words:

“Continuous Delivery powered by Docker! We zoom in on the “Integration” stage of a delivery pipeline for this year’s hackathon. Spin up EC2/OpenStack hosts running nothing but Docker, run security tests with Docker Bench, retrieve artifacts from Bintray and Docker Hub, stand up Docker containers running Wildfly and MySQL connected with Docker Link, run Selenium tests distributed across cores in a cluster, and automatically tear down the environment. We also use Docker Stats to monitor the application and surface these stats in a Dashing dashboard.”

Docker Pancake by AYANO Tetsuro, Hari Kunamneni, Roslyn Lau, Gideon Kory
In their own words:

“This service provides a editor for making it easier to Dockerfile. Dockerfile itself is overlapping layer as a pancake replace or manage and you can easily to bring from another file. So, one of the layers on a single pancake and make a Dockerfile like cooking sense.”


Warp by Charlie Lewis & George Lewis
In their own words:

“warp is a simple wrapper for the Docker ecosystem. One stop shop to install, update, and interact with docker, machine, compose, etc.   Provides capability to dynamically load functions and namespaces from your own helper scripts or convenience functions. Allows for theme support to customize color handling and screen size, including a truncate as well as a line wrap mode. warp has extremely minimal system dependencies (almost 100% bash), so it will work as-is on a variety of vanilla and minimal operating systems without extra language support needed, including OS X and Ubuntu.”

Deploy to Docker by Ian Macalinao, Huy Le, Anandkumar Patel, Jason Xie 
In their own words:

Deploy to Docker provides a 1-click method to deploy a project to Docker. It allows deployment of an existing Docker Compose-enabled GitHub repo to services like DigitalOcean and handles provisioning of the servers and deployment of the containers. It can be used to try out a project or to preview staging/feature branches.

The Phedds by Mike Bright, Mario Loriedo, Ryan Vanniekerk, Zorigt Bazarragchaa, Kalyan Thatikonda, Murali Konnipati  
In their own words:

Let’s build the ultimate docker demo, viewable in a browser with pluggable panes which could be – command-line – graphical resource or “”inspect”” views – dashboard (e.g.Seagull or Kitematic). The goal is to enable functional, snazzy, fun demos of your favorite container techno! Demo scenario could be each of: – Basic cmd-line pane plus rich GUI views of Docker file system and other resources – multi-frame demo of a multi-tier or load-balanced scenario with separate performance pane – a bunch of snazzy GUI demos (D3 demos, Jupyter, … )


Docker Backend UI by ganesh balaji, Felipe valdes
In their own words:

SherDock by Darren Shepherd, Alena Prokharcyk, James Harris, Bill Maxwell, Josh Curl, Vincent Fidducia, Ankush Agarwal, Shannon Williams 
SherDock was done by the Rancher Labs team and was NOT eligible to win!
In their own words:

Introducing SherDock: Docker Image Management Simplified SherDock is a container that runs on your host to automate the management of images and volumes on your Docker machine.   SherDock – – Discovers Images, sizes, and status. – Shows volumes, reads on disk metadata to find orphaned volumes. – Graphs image layers – Garbage collects images on a configurable interval – Configure garbage collection exception list – Auto pulls latest versions of images

ufi by Whit Morriss, Wayne Witzel III, Kapil Thangavelu, Matt Bruzek, Mike Ebinum, Mitch Ruebush, T.J. Corrigan, Deep Mehta, Chad Sesvold  
In their own words:

For the 2015 Hackathon of the ufi team decided to implement a canary testing system with Docker containers and piecing together some existing software. The canary testing will help with CI to verify new software is working properly.


Wharf by Chris Jelly, Sean Edwards 
In their own words:

Wharf is an API to let Docker Compose users post their compose yaml file and get back a CloudFormation template defining an ECS cluster. Future planned expansion for this involves a) integration with Docker Hub to let you deploy your containers to ECS easily, b) visualization of containers and their links in a web UI

ComposeMonkey by Prateek Agarwal, Johan Harjono, Anchal Agrawal, Jack Huang, Paul Mou 
In their own words:

ComposeMonkey helps developers test their Docker containers for failures and interruptions. Our hack is an out-of-the-box solution for developers to provide an environment with deliberate interruptions and latency in the system. We create proxy containers for links in the docker-compose.yaml file and provide a user interface to control the behaviors of the downstream services. The chosen behavior is then reflected in the containers.   Developers don’t need to modify their .yaml files. Proxy containers are created in the background and developers don’t need to make any config changes.

Pipes by Francis Bouvier, Charles Raimbert
 In their own words:

We all love micro-services. Mostly because they follow the Unix philisophy: one simple tool for each task.   In Unix we can easily chain those tools by the standard input/output, through the pipe.   But in a cloud environment we can’t. We have either to use specific RPC features or build for each service a dedicated API. Even so we still have to manage all the orchestration and worflow process. This makes the micro-services less agnostic, difficult to test and difficult to deploy.   What if we could just do the same in the Cloud as in our terminal ?   service_1 | service_2 | service_3

Docker Orchestra by Dennis Benkert, Timo Derstappen 
In their own words:

Orchestration is one of the big topics in the microservice world and container space. All the software pieces have be run, scheduled and coordinated in an distributed environment. So we thought, how about combining the concepts of music and microservices into a project and create something that is fun!   Orchestra is a project that runs and coordinates different musician microservices using multicast service discovery. It plays a classic Händel song on a CoreOS cluster with Weave networking.

DockingLogic by Tigran Bayburtsyan
In their own words:

It is easy to bring 1000s of containers up and running, but it’s very hard to configure networking for that amount of containers and write 100s of Bash scripts to control Docker containers at scale. To solve that problem I’m planning to create programmable future for scaling Docker containers without any problems based on project, which is already solved networking problem for Docker containers at scale. It will allow program logic of Docker containers infrastructure using Python or Ruby programming languages.

Docker VLAN by Naoto Yamamoto, Yuji Oshima, Hisaharu Ishii, Sotris Salloumis, Clinton Kitson, Hariharan Subramanian  
In their own words:

VLAN Extension for libnetwork/bridge driver. VLAN is simple, but widely used in many enterprise systems. Enabling VLAN will spread Docker’s use case and Enhancing security based on isolation. Our hack supports single and multiple hosts.

To Create new network:

# ./docker-1.8.0-dev network create -d bridge --vlanid=200 --ifname=eth0 --bip=x.y.z.w/q --fixed-cidr=x.y.z.w/q br200

To attach new container:

# ./docker-1.8.0-dev run -itd --net=br200:<container-IP> ubuntu /bin/bash



swarm-sec – Swarm Security Assessment tool by Sriram Natarajan, Sujith Bhaskaran, Sumanth Sathyanarayana 
In their own words:

The goal of swarm-sec is to assess and highlight the security issues in a native swarm cluster setup and faciliate a developer or administrator to deploy a secure cluster environment. swarm-sec is an extension to docker-bench-security.   Currently swarm-sec can: – Assesses possible issues in swarm daemon configuration – Details node-specific security issues in the cluster – Remote connection issues between the node and swarm manager


libsecurity by Ad Van Der Veer, Amir JerbiPeter RossbachMeir WahnonDaniel SachseGreg Deed
In their own words:

It is a priority to create a bulletproof server software. Customers need a system in place to react as quickly as possible to vendor releases of new security vulnerabilities.   Traditionally, and especially for open source projects, the product is often acquired (anonymously) through a variety of channels and contacting the user can be downright impossible.   Libsecurity provides a solution for Docker users act as a real time mitigation and resolution for receiving and acting on new vulnerabilities.

Many thanks to all the participants who made this event a success! We had a fantastic time thanks to you and hope to see you at the next Docker hackathon.




Learn More about Docker

Continue reading...

Be the first to write a comment.

Leave a Reply