Files
stAndrews/Dockerfile.base
Rob Wiederstein 992ff2c99d
All checks were successful
Deploy stAndrews / deploy (push) Successful in 6s
Split Dockerfile into base + app layers for fast CI rebuilds
Base image (standrews-base) contains system deps and R packages.
App Dockerfile is now just COPY + permissions — rebuilds in seconds.
2026-03-09 15:01:48 -04:00

38 lines
901 B
Docker

FROM rocker/shiny:4.5.2
# 1. System dependencies (spatial stack required for sf)
RUN apt-get update && apt-get install -y --no-install-recommends \
build-essential \
cmake \
curl \
libabsl-dev \
libcurl4-openssl-dev \
libfontconfig1-dev \
libfreetype6-dev \
libfribidi-dev \
libgdal-dev \
libgeos-dev \
libharfbuzz-dev \
libicu-dev \
libjpeg-dev \
libpng-dev \
libproj-dev \
libssl-dev \
libtiff5-dev \
libudunits2-dev \
libxml2-dev \
pkg-config \
proj-bin \
proj-data \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /srv/shiny-server
# 2. Copy lockfile and restore R packages
COPY renv.lock .
ENV RENV_PATHS_LIBRARY=/usr/local/lib/R/site-library
RUN R -q -e "install.packages('renv', repos='https://cloud.r-project.org')" \
&& R -q -e "renv::restore(library='/usr/local/lib/R/site-library', prompt=FALSE)"