在 Ubuntu 18.04 上使用摇杆脚本构建 R Docker 容器

Building R Docker Container with Rocker Scripts on Ubuntu 18.04

我遇到了一个包的问题,​​可以通过回滚到 bionic 来解决。使用新的模块化摇杆系统,以下内容似乎可以基于 18.04 上的 their build 工作。当我用 hello world shiny 应用程序构建它时,我只是 shiny_server 退出代码 0.

FROM ubuntu:18.04

# R Ver Env
ENV UBUNTU_VERSION=bionic
ENV R_VERSION=4.0.5
ENV TERM=xterm
ENV LC_ALL=en_US.UTF-8
ENV LANG=en_US.UTF-8
ENV R_HOME=/usr/local/lib/R
ENV CRAN=https://packagemanager.rstudio.com/all/__linux__/bionic/latest
ENV TZ=Etc/UTC
# Shiny Env
ENV S6_VERSION=v1.21.7.0
ENV SHINY_SERVER_VERSION=latest
ENV PANDOC_VERSION=default


COPY --from=rocker/r-ver:4.0.5 /rocker_scripts /rocker_scripts

RUN  /rocker_scripts/install_R.sh \
  /rocker_scripts/install_shiny_server.sh \
  /rocker_scripts/install_tidyverse.sh 

EXPOSE 3838


CMD ["/init"]

我不知道为什么,但是将安装脚本分成不同的层会使图像有效。

FROM ubuntu:18.04

# R Ver Env
ENV UBUNTU_VERSION=bionic
ENV R_VERSION=4.0.5
ENV TERM=xterm
ENV LC_ALL=en_US.UTF-8
ENV LANG=en_US.UTF-8
ENV R_HOME=/usr/local/lib/R
ENV CRAN=https://packagemanager.rstudio.com/all/__linux__/bionic/291
ENV TZ=Etc/UTC

COPY --from=rocker/r-ver:4.0.5 /rocker_scripts /rocker_scripts

RUN  /rocker_scripts/install_R.sh

# Shiny Env
ENV S6_VERSION=v1.21.7.0
ENV SHINY_SERVER_VERSION=latest
ENV PANDOC_VERSION=default

RUN  /rocker_scripts/install_shiny_server.sh 

RUN /rocker_scripts/install_tidyverse.sh 

EXPOSE 3838

CMD ["/init"]