Docker – actually containers generally – has changed the say that software engineers and operations do work. We use them for repeatable builds, for scaling, for our testing architecture, and so much more. Here we focus on using Docker for pluggable, versatile command line tools, focusing on how to exchange data within such a system while letting containerization handle requirements for discrete components.