I've always thought of Docker as an Application container rather than as a "Server" container. I have been using prebaked VM's for my server needs so far. Once I start building up custom application servers Docker begins to make more sense. My "Machine Learning" server if it ever gets completed is likely to have several applications where using docker will make version control a lot easier. Things like Pfsense come pre-canned in a VM and are supported by all sorts of unlikely folk so versioning and rollbacks (make, build, doh!) aren't really a concern.