| # ============================================================================== | |
| # Dockerfile for Polyphenol Estimation Pipeline Shiny App | |
| # Pipeline: Stephanie M.G. Wilson | |
| # App: Richard Stoker | |
| # Version: Alpha 0.1 | |
| # ============================================================================== | |
| FROM rocker/shiny-verse:4.3.2 | |
| # Install system dependencies | |
| RUN apt-get update && apt-get install -y --no-install-recommends \ | |
| libcurl4-openssl-dev \ | |
| libssl-dev \ | |
| libxml2-dev \ | |
| libfontconfig1-dev \ | |
| libharfbuzz-dev \ | |
| libfribidi-dev \ | |
| libfreetype6-dev \ | |
| libpng-dev \ | |
| libtiff5-dev \ | |
| libjpeg-dev \ | |
| zlib1g-dev \ | |
| && apt-get clean \ | |
| && rm -rf /var/lib/apt/lists/* | |
| # Install R packages | |
| RUN R -e "install.packages(c( \ | |
| 'shiny', \ | |
| 'bslib', \ | |
| 'shinyWidgets', \ | |
| 'DT', \ | |
| 'plotly', \ | |
| 'tidyverse', \ | |
| 'readxl', \ | |
| 'vroom', \ | |
| 'rmarkdown', \ | |
| 'zip' \ | |
| ), repos='https://cran.rstudio.com/', dependencies=TRUE)" | |
| # Create app directory | |
| WORKDIR /app | |
| # Copy application files | |
| COPY app.R global.R ui.R server.R ./ | |
| COPY www/ ./www/ | |
| COPY data/ ./data/ | |
| COPY demo_data/ ./demo_data/ | |
| # Expose port for Hugging Face Spaces | |
| EXPOSE 7860 | |
| # Run the application | |
| CMD ["R", "-e", "shiny::runApp('/app', host='0.0.0.0', port=7860)"] | |