FROM rocker/shiny:4.5.2 AS renv-base WORKDIR /app RUN apt-get update && apt-get install -y \ build-essential \ cmake \ libcurl4-openssl-dev \ libssl-dev \ libxml2-dev \ libgdal-dev \ gdal-bin \ libgeos-dev \ libproj-dev \ libudunits2-dev \ libpq-dev \ libfontconfig1-dev \ libfreetype6-dev \ libharfbuzz-dev \ libfribidi-dev \ libabsl-dev \ libpng-dev \ libjpeg-dev \ libtiff-dev \ git \ pandoc \ && rm -rf /var/lib/apt/lists/* RUN mkdir -p renv COPY renv.lock renv.lock COPY .Rprofile .Rprofile COPY renv/activate.R renv/activate.R COPY renv/settings.json renv/settings.json RUN mkdir -p renv/.cache ENV RENV_PATHS_CACHE=renv/.cache RUN R -s -e "renv::restore()" FROM rocker/shiny:4.5.2 WORKDIR /app RUN apt-get update && apt-get install -y \ libcurl4 \ libssl3 \ libxml2 \ libgdal32 \ libgeos-c1v5 \ libproj25 \ libudunits2-0 \ libpq5 \ libfontconfig1 \ libfreetype6 \ libharfbuzz0b \ libfribidi0 \ libpng16-16 \ libjpeg62-turbo \ libtiff6 \ pandoc \ && rm -rf /var/lib/apt/lists/* COPY --from=renv-base /app/renv /app/renv COPY --from=renv-base /app/.Rprofile /app/.Rprofile COPY --from=renv-base /app/renv.lock /app/renv.lock COPY dashboard.Rmd dashboard.Rmd COPY queries.R queries.R COPY utils.R utils.R EXPOSE 8080 CMD ["R", "-e", "rmarkdown::run('dashboard.Rmd', shiny_args = list(host = '0.0.0.0', port = 8080))"]ROM rocker/shiny:4.5.2 AS base