-
Notifications
You must be signed in to change notification settings - Fork 0
/
Dockerfile
45 lines (40 loc) · 1.32 KB
/
Dockerfile
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
FROM rocker/r-ver:latest AS renv_base
WORKDIR /usr/local/src/myscripts
RUN apt-get update && \
apt-get install -yyy \
build-essential \
libcurl4-gnutls-dev \
libxml2-dev \
libssl-dev \
libgmp3-dev \
cmake \
libcairo2-dev \
libxt-dev \
libharfbuzz-dev \
libtiff-dev \
libzstd-dev \
git \
libgit2-dev \
libfribidi-dev \
wget && \
wget https://launchpad.net/ubuntu/+source/icu/70.1-2/+build/23145450/+files/libicu70_70.1-2_amd64.deb && \
dpkg -i libicu70_70.1-2_amd64.deb && \
ln -s /usr/lib/x86_64-linux-gnu/libgit2.so.1.7 /usr/lib/x86_64-linux-gnu/libgit2.so.1.1
WORKDIR /project
COPY renv.lock renv.lock
RUN mkdir -p renv
COPY .Rprofile .Rprofile
COPY renv/activate.R renv/activate.R
COPY renv/settings.json renv/settings.json
RUN R -e 'options( \
repos = c(CRAN = "https://packagemanager.posit.co/cran/__linux__/jammy/latest"), \
HTTPUserAgent = sprintf( \
"R/%s R (%s)", \
getRversion(), \
paste(getRversion(), \
R.version["platform"], \
R.version["arch"], \
R.version["os"]))); \
renv::install(c("stringi", "git2r")); \
renv::restore(repos = c(CRAN = "https://packagemanager.posit.co/cran/__linux__/jammy/latest"))'
COPY . .