It shouldn't be that hard. Here's how I do it on my Docker install. I'm using CentOS, so you'll need to replace the yum with apt-get`:
RUN yum install -y openssl-devel && \
yum install -y libcurl-devel && \
yum install -y libssh2-devel && \
yum install -y libxml2-devel && \
yum install -y R
That gets me R. Then I copy over an R script to install the R kernel using IRkernel
ADD add_r_kernel.sh /usr/local/bin/
RUN chmod +x /usr/local/bin/add_r_kernel.sh && \
/usr/local/bin/add_r_kernel.sh
my add_r_kernel.sh looks like this:
#!/bin/Rscript
install.packages(
c(
'devtools',
'rlang',
'uuid',
'digest',
'callr',
'tidyverse',
'dplyr',
'devtools',
'formatR',
'remotes',
'selectr',
'caTools',
'stringi',
'tidyverse',
'rlang'
),
repos='http://cran.us.r-project.org'
)
install.packages(
c(
'curl',
'openssl',
'git2r',
'httr',
'gh',
'usethis',
'devtools',
'shiny'
),
repos='http://cran.us.r-project.org'
)
devtools::install_github("IRkernel/IRkernel")
IRkernel::installspec(user = FALSE)