Cleanup docs Dockerfile, so it matches best practices.

- Cleanup spacing throughout
- swap `&&` to beginning of lines to improve readability
- better cache busting for the SvenDowideit/mkdocs repo based on git commit id
- take advantage of the `WORKDIR`

Thanks to @tianon for the review so far :smile:.

I made this and realized I had included the same changes as @jfrazelle in #8715, but I think this adds a few more tweaks to make it more readable.
That makes me think maybe we should write, or just mark up, a real-world Dockerfile with lots of comments. I know it helps me to be led through an actual example.