From fdde772ee272bc7989ccd19552e2581d6c594237 Mon Sep 17 00:00:00 2001 From: "Trevor L. Davis" Date: Tue, 7 Jan 2025 05:09:58 -0800 Subject: [PATCH] `README.md` and `Dockerfile` tweaks (#9) * docs(README.md): Explicitly mention which R binary to use * refactor: Update default CMD to `bash` * Previously inherited a default `CMD ["R"]` which put users in the non-instrumented R-release * refactor: Don't use deprecated MAINTAINER * Previously docker would emit following warning: `WARN: MaintainerDeprecated: Maintainer instruction is deprecated in favor of using label` * "supposed" to instead use `org.opencontainers.image.authors` which is a freeform string: + https://docs.docker.com/reference/build-checks/maintainer-deprecated/ + https://github.com/opencontainers/image-spec/blob/main/annotations.md#pre-defined-annotation-keys * refactor: Use "ENV key=value" * Previously docker would warn: `LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format` --- Dockerfile | 7 ++++--- README.md | 6 +++++- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/Dockerfile b/Dockerfile index 9255335d..a790a7ca 100644 --- a/Dockerfile +++ b/Dockerfile @@ -4,7 +4,8 @@ FROM r-base:latest ## This handle reaches Carl and Dirk -MAINTAINER "Carl Boettiger and Dirk Eddelbuettel" rocker-maintainers@eddelbuettel.com +LABEL org.opencontainers.image.authors="Carl Boettiger and Dirk Eddelbuettel " + ## Remain current RUN apt-get update -qq \ @@ -106,7 +107,7 @@ RUN echo 'options("repos"="http://cloud.r-project.org")' >> /usr/local/lib/R/etc ## More verbose UBSAN/SAN output (cf #3) -- this is still somewhat speculative ## Entry copied from Prof Ripley's setup described at http://www.stats.ox.ac.uk/pub/bdr/memtests/README.txt -ENV ASAN_OPTIONS 'alloc_dealloc_mismatch=0:detect_leaks=0:detect_odr_violation=0' +ENV ASAN_OPTIONS='alloc_dealloc_mismatch=0:detect_leaks=0:detect_odr_violation=0' RUN cd /usr/local/bin \ && mv R Rdevel \ @@ -114,4 +115,4 @@ RUN cd /usr/local/bin \ && ln -s Rdevel RD \ && ln -s Rscriptdevel RDscript - +CMD ["bash"] diff --git a/README.md b/README.md index 8817b515..974c8e9c 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,11 @@ and to [Using the Undefined Behaviour Sanitizer](http://cran.r-project.org/doc/manuals/r-devel/R-exts.html#Using-Undefined-Behaviour-Sanitizer). Both require a particularly instrumented binary of R. This repository -provides a Docker container with such a binary, based on the R-devel sources. +provides a Docker container with such a binary, based on the R-devel sources: + +* This particularly instrumented binary of `R` is available on the path as `Rdevel` and for convenience is also symbolically linked on the path as `RD`. +* The particularly instrumented versions of `Rscript` on the path are `Rscriptdevel` with symbolic link `RDscript` for convenience. +* The `R` and `Rscript` binaries in the path of this container are inherited from the `r-base/latest` container and are **not** particularly instrumented with sanitizer support. ## Rocker-Org