Closed kforner closed 9 years ago
Cool, nice work on this so far. It's not clear to me if you're referring to installing general cran R packages from MRAN or just base r stuff? What workflow do you envision for installing additional R packages on one of these images? Would a user apt-get install r-cran-ape
etc?
As far as getting just base-r to build, Dirk's trick of installing from SVN seems reliable going pretty far back (e.g. the images in compiled/
).
And I think the SVN repo is properly 'tagged' so you should be able to get particular versions of R.
It's not clear to me if you're referring to installing general cran R packages from MRAN or just base r stuff? What workflow do you envision for installing additional R >packages on one of these images? Would a user apt-get install r-cran-ape etc?
no, using the MRAN repo, you just packages as usual, using install.packages(). The point is that i f you use a normal CRAN repo, you will get a package possibly incompatible with the R version (e.g. with dependency on R >= 3.2).
As far as getting just base-r to build, Dirk's trick of installing from SVN seems reliable going pretty far >back (e.g. the images in compiled/).
Compiling from source was also my first approach, but:
What I'd like is that for any real serious scientific work, we use versioned rocker images that will work forever.
You can easily create versioned rocker images going forward but going backwards requires either
We only suggested the latter so that you get something going.
- a compromise, eg rebuilding from SVN.
This may fail too at any point if you does not use a snapshot repository. I think that if you use a fixed version of the base image (i.e. the debian, that is currently one other issue since those images are not static), a debian snapshot and a MRAN snapshot you are pretty safe, or did I miss something ?
I agree that you may need some try-and-error to develop the Dockerfile, but you only have to do it once.
Yes, I obviously meant using a combination of old Debian releases, and the snapshot package facility, to recreate as closely what you aim for: old code and old mathing tools as binaries to recreate R binary resembling "what was built then".
ok, this was for backlog. But thinking now for the future, for instance R-3.1.1. My goal is to create now a docker whose usage will be identical in 5 years for instance. I based the Dockerfile on debian:wheezy. Is-it a good idea ? I do not know much about debian, it this in your opinion a good choice ?
On Fri, Nov 7, 2014 at 2:18 PM, Dirk Eddelbuettel notifications@github.com wrote:
Yes, I obviously meant using a combination of old Debian releases, and the snapshot package facility, to recreate as closely what you aim for: old code and old mathing tools as binaries to recreate R binary resembling "what was built then".
— Reply to this email directly or view it on GitHub https://github.com/rocker-org/rocker-versioned/pull/5#issuecomment-62140812 .
See https://www.debian.org/releases/ I can't decide that for you. I like testing better than stable but that because I update frequently. Just make a choice and document it.
R-3.1.1
For better reproducibility:
R-3.0.2
R-2.12.0
work-around: could not make it to work purely on a debian snapshot. Had to mix with the default repository using an apt preferences file to force only the r-* packages from the debian snapshot.