On Thu, Jan 14, 2016 at 12:28:56AM +0000, Carl Boettiger wrote: > Greatly enjoying this discussion. A few comments to current themes: > > On Dockerfiles: > > Though I'm a dedicated Docker user (I publish Dockerfiles with my papers > and have exclusively used Dockerized environments, both locally and > remotely, for my computing environment for the past year and a half), I > would push back on the idea that a Dockerfile is a complete recipe. I > certainly believe writing a Dockerfile is a more practical solution than > asking people to document dependencies manually -- if nothing else, it is > easier to prove that it is the *actual* environment and not just what you > *think* your environment is. > > However, a lot still depends on both how you write your Dockerfile, and > many of the issues are really just kicked upstream to things like the > Debian release process. That's a good solution, since releases tend to > keep most libraries stable (while usually offering backported security > updates for a finite window), but a magic bullet. And it's pretty easy & > common to write your dockerfile to just pull the latest version of packages > off CRAN or pip install or whatnot and so the recipe builds the bleeding > edge software, not the versions you actually used. Who knows what > longevity the binary docker images have, but it must be acknowledged that > its the ugly heavy binary images, not the nice Dockerfile snapshot, that > provides the definitive environment.
(Agree with most of this; I'm just hesitant to say anything nice about ugly heavy binary images :) For those who are interested, here is an example of a Dockerfile that I tried to engineer with minimal complexity: https://github.com/ctb/2016-mybinder-irkernel/blob/master/Dockerfile https://github.com/ctb/2016-mybinder-irkernel/blob/master/install-irkernel.R -- it's basically a shell script. That's both good and bad: you can write them with more or less complexity involved. I fear that they will go the way of the setup.py, with increasing amounts of complexity being used to deal with more and more edge cases, but that's just decades of bitter experience talking - pay me no mind, I'm old and grumpy. best, --titus -- C. Titus Brown, [email protected] _______________________________________________ Discuss mailing list [email protected] http://lists.software-carpentry.org/mailman/listinfo/discuss_lists.software-carpentry.org
