Skip to content
eddelbuettel edited this page Oct 13, 2014 · 16 revisions

Overview of provided images

Images are built based on the latest Debian distribution with completely updated packages for security and performance. We will generally use the rolling Debian testing release. Images providing additional packages will often install packages directly from CRAN sources, rather than relying on prepackaged binaries. This means that most images should always contain the latest versions of the packages that are available on CRAN. Certain use-cases may provide packages not (yet) available on CRAN.

Base Images

  • r-base
  • r-devel Extends r-base and makes the current development version of R available as Rdevel
  • rstudio Extends r-base, provides an instance of RStudio Server running on container port 8787.

Use-Case Images

  • hadleyverse Extends rstudio, provides rmarkdown, knitr, pandoc, and latex tools for authoring papers and presentations in the RStudio environment. Also provides popular packages by Hadley Wickham such as ggplot2, dplyr, tidyr, devtools, httr, and others.
  • ropensci Extends hadleyverse, provides all packages from the rOpenSci Project that have been released to CRAN.

Why not Ubuntu & Debian flavors?

If you are just running the images as-is (rather than using them as a base for your own Dockerfiles), there are very few differences between the Ubuntu and Debian images. The Debian images tend to be smaller, particularly for the simplest images like r-base or rstudio. Focusing on just Debian makes our work a little easier and puts less stress on the build infrastructure.

Docker excels at modular reuse. If you intend to build upon these Dockerfiles, we suggest you choose the flavor that matches any other configuration scripts you might want to (re)use in building your extension -- for instance, if you already have your project running on a Debian machine, that makes the most sense. Conversely, if you've written a .travis.yml for your project, the configuration is likely to match the Ubuntu images most closely as Travis runs on Ubuntu. Many scripts will run equally well on either flavor.

Installing binaries

Certain additional packages cannot be installed using install.packages due to existing dependencies. We recommend using the pre-packages distribution binaries in this case.

  • The Debian-based hadleyverse also provides the debian-r.debian.net repository for installing R binaries. This includes more and more recent binaries for CRAN packages than are available in standard Debian repositories, but is not completely comprehensive.

Best practices in Dockerfile construction

TBD