Closed nanxstats closed 7 years ago
CRAN package version persistence supported in c43c744 . (v0.3 submitted to CRAN)
Remote package support added: https://github.com/road2stat/liftr/commit/51cdd169b2d988480a29e948d1ad962d9f2d1078
Currently investigating the possibility of replacing all low-level Docker calls using docker-r, which will eventually solve the docker push
problem.
Closing the issue for now.
Reproducibility design problem raised by @tengfei .
To increase reproducibility, instead of just using the latest versions of (system and R) packages (since the packages are constantly being updated), we should make sure that users use certain versions of packages. But how? See below discussion.
Discussion on Best Practice of Full Reproducibility on Jul 20, 2015 in the balcony with lake view:
rocker/r-base
only hasLATEST
images, which means this is not fully reproducible when users pull the r-base image later. Instead, BioC has daily snapshots. -- (Is it ok for users to select their own base image (like some images with theLATEST
tag), because the snapshot we store in Docker hub is a somehow 'full' image with theLATEST
image at that time point? If so, we can userocker/r-base:LATEST
) THIS NEEDS CONFIRMATIONliftr
will pack up local packages and make image, push container to Docker hub, the pushed container ID (tag) will be returned by aliftr
function. (We need to make functions for pushing containers to Docker hub or other registries. Probably need a Docker Hub API package). Then we write out a new Rmd, only containing the pushedfrom: imagename:version
. This need a new design of the workflow ofliftr
(more functions).VOLUME
will affect reproducibility (obviously not able to build once, run anywhere). We need to change this, probably copying all the files in the liftr working directory to the container.(extract the versions (or let the user specify) and write them to the Dockerfile?)