Skip to contents

Generates a `dockerfile“ based on a package DESCRIPTION file, ensuring all package dependencies are installed in the container.

Usage

dk_from_description(
  description_file = "DESCRIPTION",
  r_version = NULL,
  base_image = NULL,
  include_sysreqs = TRUE
)

Arguments

description_file

Path to DESCRIPTION file

r_version

R version to use (default: from DESCRIPTION)

base_image

Base image to use (default: determined from R version)

include_sysreqs

Include system requirements (default: TRUE)

Value

A dockerfile object configured based on the DESCRIPTION file

Details

This function:

  • Extracts the R version from the DESCRIPTION's Depends field (if available)

  • Uses the appropriate rocker/r-ver base image

  • Extracts package dependencies from Depends, Imports, and Suggests fields

  • Adds system requirements for those packages

  • Sets up the package installation

The resulting dockerfile will install all the dependencies required by your package and then install the package itself from the source.

See also

dk_from_session() for creating from the current session, dk_from_renv() for creating from renv.lock files, & dk_add_sysreqs() for adding system requirements

Other dockerfile from environment functions: dk_from_renv(), dk_from_script(), dk_from_session()

Examples

if (FALSE) { # \dontrun{
# Create a dockerfile from a DESCRIPTION file
df <- dk_from_description("DESCRIPTION")
} # }