Docker may not be the solution to ending world hunger, but the recent myriad of strange and remarkable use cases for it might have you thinking otherwise. From managing Raspberry Pi clusters to facilitating genome sequencing and cancer research, these top 11 weird and wonderful uses for Docker illustrate the technology's amazing versatility across a variety of innovative and irreverent applications.
1. Create your own GitHub-like service.
Looking for a way to keep your repos out of the public cloud? GitLab is great, but isn't exactly the most lightweight of solutions for containerization.
With Gogs and Docker, you can have a no-nonsense, self-hosted private code repository up and running in minutes.
2. Containerize your Tor relay node.
For those who value internet anonymity and privacy, Tor is a crucial tool for ensuring certain personal online freedoms are secured. This useful Docker container simplifies the task of setting up a Tor relay node.
3. Customize your holiday lighting.
[insert-your-holiday-here] is around the corner, how about some festive lighting for the occasion? This Node.js project drives a NeoPixel LED strip from inside a Docker container.
4. Contain your inner Link.
Mostly an example of containerizing desktop apps just for the hell of it, but a nonetheless fun exercise for Docker aficionados. This Dockerfile allows you to run an SNES emulator inside a container for isolated gameplay.
5. Run your own malware analysis engine.
Sandboxing and isolation are central to today's malware analysis mechanisms; to this end, Docker can be a lightweight alternative to complete virtualization. This REMnux project provides Docker images for malware analysis, giving information security professionals an easy way to set up tools and environments for malware detonation.
6. Containerize your Skype sessions.
Wish you could Skype Grandma in complete isolation? By running your Skype sessions inside a Docker container, you can do just that.
7. Build a Skype Robot controlling Jenkins
Admittedly, the above Docker/Skype example isn't exactly a hallmark of innovation. So how about using Docker to build a Skype robot controlling Jenkins?
8. Build an RNA sequencing pipeline
RNA sequencing (RNAseq) is about quantifying, discovering, and profiling RNAs for scientific and medical research. This amazing application of Docker shows how to create a RNAseq pipeline with *nix, Java 7, and Docker.
9. Dockerize your movie-watching.
In most cases your Docker-driven desires will not involve curing life-threatening diseases. Like, say for instance—watching movies in a Docker container on your desktop. Well, here you go.
10. Manage your Raspberry Pi cluster with Docker Swarm.
11. Accelerate cancer research
Last but not least, this weird but noble use case for Docker uses the technology to advance cancer research, specifically for:
"validating multiple cancer variant callers in bcbio-nextgen using a synthetic reference call set from the ICGC-TCGA DREAM challenge. We've previously validated germline variant calling methods, but cancer calling is additionally challenging."
Amen to that. Let's just say Docker streamlines cancer-shot-calling.
For more innovative Docker use cases, check out Frazelle's blog and Hypriot. UpGuard also has its own specific Docker use cases—for example, our cloud-hosted single tenant appliance is built on top of a cluster of Docker systems for better isolation and security. Furthermore, our platform can scan/monitor Docker containers for vulnerabilities and misconfigurations.