File size: 1,225 Bytes
cb0de04
 
48d4283
cb0de04
8b11d44
 
cb0de04
48d4283
cb0de04
48d4283
 
cb0de04
 
48d4283
 
cb0de04
48d4283
 
cb0de04
 
 
 
48d4283
 
cb0de04
 
 
 
 
 
 
 
 
 
 
 
 
 
b9938e0
 
cb0de04
 
 
 
 
48d4283
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
FROM rocker/shiny:latest
ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update && apt-get install -y --no-install-recommends \
    build-essential \
    pkg-config \
    ca-certificates \
    git \
    wget \
    libssl-dev \
    libxml2-dev \
    libcurl4-openssl-dev \
    libgit2-dev \
    libfontconfig1-dev \
    libfreetype6-dev \
    libpng-dev \
    libharfbuzz-dev \
    libfribidi-dev \
    libicu-dev \
    libudunits2-dev \
    libproj-dev \
    proj-bin \
    libgdal-dev \
    libgeos-dev \
  && rm -rf /var/lib/apt/lists/*

# Install remotes then lapop (no vignettes)
RUN R -e "install.packages('remotes', repos='https://cloud.r-project.org')"
RUN R -e "remotes::install_github('lapop-central/lapop', dependencies=TRUE, force=TRUE, build_vignettes=FALSE, upgrade='never', args='--no-multiarch --no-test-load')"

# --- Install ALL CRAN packages your app uses ---
RUN R -e "install.packages(c( \
    'shiny', \
    'shinyWidgets', \
    'haven', \
    'dplyr', \
    'tidyr', \
    'stringr', \
    'shinyjs', \
    'bsplus', \
    'Hmisc' \
  ), repos='https://cloud.r-project.org')"

COPY . /srv/shiny-server/
WORKDIR /srv/shiny-server/
EXPOSE 7860
CMD ["R", "-e", "shiny::runApp(host='0.0.0.0', port=7860)"]