At work we use Sphinx to create html based documentation for some of
our applications. Setting up a new machine to build the documentation requires
installing Chocolatey, Python, Sphinx,
the Read the Docs Theme, and Node. While not too
complex small differences in individual machines can result in broken builds.
I’m already familiar with creating virtual machines to create isolated
development environments – Packer and Vagrant are your
friends – but a virtual machine just for generating help documentation seems
like a pretty heavy handed solution.
I’ve read that Docker is used to create small, repeatable,
environments (containers) for developing and running applications but I had zero
hands on experience with Docker and I wanted to learn more. This describes my
how I used Docker to create a development environment suitable for
building documentation with Sphinx.