Skip to content

r-devel/containers

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Distro contrainers

Containers for testing R packages on some popular Linux distributions using the native R installation for that distro. To run a container locally use:

docker run -it ghcr.io/r-devel/rocky-8

The containers are available for x86_64 and arm64, for the full list see: https://github.com/orgs/r-devel/packages?repo_name=containers

Other containers

There are many other people maintaining containers with R installations for all kinds of purposes:

  • r-hub/containers: extensive collection of R configurations for testing R with various compilers and instrumatation tools.
  • r-hub/r-minimal: light weight R image based on alpine and musl libc.
  • r-lib/rig: containers with R builds from Posit on various distros.
  • r-rocker: images with various versions of R and preinstalled packages.

Use whatever works for you.

Using containers on GitHub actions

Below an example workflow to test an R package on GitHub Actions on multiple containers and architectures.

name: Linux Distros
on:
  push:
  pull_request:

jobs:
  rhel:
    runs-on: ubuntu-24.04${{matrix.arch=='arm64' && '-arm' || ''}}
    name: ${{ matrix.distro }} ${{ matrix.arch }}
    strategy:
      fail-fast: false
      matrix:
        distro: [ 'rocky-8', 'rocky-9', 'fedora' ]
        arch: [ 'amd64', 'arm64' ]
    container:
      image: ghcr.io/r-devel/${{ matrix.distro }}:latest
    steps:
      - uses: actions/checkout@v4
      - uses: r-lib/actions/setup-r-dependencies@v2
        with:
          extra-packages: any::rcmdcheck
          needs: check
      - uses: r-lib/actions/check-r-package@v2

Adapt to your needs and copy the template into e.g. .github/workflows/distros.yml in your R package repository on GitHub.

About

Containers for testing R on some popular distros

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages