Are virtual machines good for reproducibility and open science? Virtual machines (VMs) provide a way for scientists to package not only scientific software, but also data, external dependences, and even entire operating system configurations, facilitating a faithful and exact reproduction of a particular computing environment used to derive a particular result.

Are VMs and other container systems used in this way actually a net positive for open science? If the scientific software used to compute a result can only be replicated in a very particular computing environment, is it useful and reliable?
I like to think of VMs, containers, and the like as allowing repeatable research. I don't consider it reproducible if the results can only be repeated by having exactly the specified VM/container used by the original researcher.

That doesn't mean VMs or containers are not useful for open science; they do provide a means for people to rapidly disseminate the computing environment within which the results were produced. They also provide a point of reference should software used change at a later date which causes repeatability issues. If open source software is used it would be possible to track down what changed and why this affected the particular results.

At the very least, VMs and containers provide a good means with which to document the computing environment used to generate the published results.