This site is designed of a writeup/wrapup of my GSoC2014 project: Dockering Flumotion/Streaming System and Building a Build System.
I hope to document what I’ve done and any run-ins I’ve had a long the way to help anyone else who is attempting to go the same route or modify what I’ve done.
My original goals for this project were to develop a complete ‘build system’ for TimVideos software components, from provisioning to deployment, based off of the Docker.io technologies. TimVideos is a group of projects for live streaming conferences, meetings, and other presentations. Docker is a technology allows for both isolation and easy deployment of software services, in this case streaming video components.
This required initially the ‘containerizing’ the components of streaming-system. Following that, I would go on to work on a build system that would make deploying these containers as easy as the previous system of deployment.
After completion of the ‘containerizing’ portion of the project, discussion with my mentor and project leaders lead to some changes in direction. Provisioning seemed like a much lesser goal, especially with the thoughts that these containers would be deployed in the cloud. Things that became more important were configurability of images and ease of use. In addition, I collaborated with another student such that my work would make use of what the project he was working on and incorporate it(ported Flumotion) into my project.
One of the key goals of this project was to make management and deployment of TimVideos components easier. For example, each track in an event would require both an onsite collector and an offsite encoder and both would have to run on individual hosts. So, for a five or six track conference, up to 12 hosts could be required. Now we can drop as many encoders or collectors on a host as it has resources for!
See the usage page for details on how to use these components.