add dockerfile

This commit is contained in:
2025-11-29 20:43:53 -05:00
parent 4ae56e0000
commit 966cb82a4f
+53
View File
@@ -0,0 +1,53 @@
FROM rocker/shiny:4.5.2 AS base
WORKDIR /app
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 renv/.cache
ENV RENV_PATHS_CACHE=renv/.cache
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 R -s -e "renv::restore()"
FROM rocker/shiny:4.5.2
WORKDIR /app
COPY --from=base /app/renv /app/renv
COPY --from=base /app/.Rprofile /app/.Rprofile
COPY --from=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))"]