fmegahed's picture
Update Dockerfile to include the specific r installation and package versions used in Version 2.0
a2b7491 verified
FROM rocker/r-ver:4.5.2
# Install system dependencies for R packages
# - libcurl4-openssl-dev, libssl-dev: for httr/curl (ellmer dependency)
# - libxml2-dev: for xml2 (ellmer dependency)
# - libpoppler-cpp-dev: for pdftools
# - libmagick++-dev: for magick
# - libfontconfig1-dev, libfreetype6-dev: for magick text rendering
RUN apt-get update && apt-get install -y \
libcurl4-openssl-dev \
libssl-dev \
libxml2-dev \
libpoppler-cpp-dev \
libmagick++-dev \
libfontconfig1-dev \
libfreetype6-dev \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /code
# Install remotes package first, then install specific versions of required packages
RUN R -e "install.packages('remotes', repos = 'https://cloud.r-project.org')" \
&& R -e "remotes::install_version('shiny', version = '1.12.1', repos = 'https://cloud.r-project.org')" \
&& R -e "remotes::install_version('purrr', version = '1.2.1', repos = 'https://cloud.r-project.org')" \
&& R -e "remotes::install_version('ellmer', version = '0.4.0', repos = 'https://cloud.r-project.org')" \
&& R -e "remotes::install_version('pdftools', version = '3.6.0', repos = 'https://cloud.r-project.org')" \
&& R -e "remotes::install_version('magick', version = '2.9.0', repos = 'https://cloud.r-project.org')" \
&& R -e "remotes::install_version('base64enc', version = '0.1.3', repos = 'https://cloud.r-project.org')"
COPY . .
CMD ["R", "--quiet", "-e", "shiny::runApp(host='0.0.0.0', port=7860)"]