在docker镜像中安装R.

时间:2017-07-21 18:24:52

标签: python r docker dockerfile

如何在Docker镜像中安装R版本3.4.0。我用:

安装了python
RUN yum -y install https://centos6.iuscommunity.org/ius-release.rpm \
  && yum -y install python36u \
  && yum -y install python36u-devel \
  && yum -y install python36u-pip \
  && yum -y install python36u-tkinter.x86_64

同样我需要安装R:

到目前为止,我已经为R:

指定了以下内容
ENV R_BASE_VERSION 3.4.0
RUN Rscript -e 'install.packages("devtools",dependencies=TRUE)' \
    &&Rscript -e 'install.packages("methods",dependencies=TRUE)' \
    &&Rscript -e 'install.packages("jsonlite",dependencies=TRUE)' \

请建议。我是码头工人的新手

我想我需要做以下事情:

ENV R_BASE_VERSION 3.4.1

## Now install R and littler, and create a link for littler in /usr/local/bin
## Also set a default CRAN repo, and make sure littler knows about it too
RUN apt-get update \
    && apt-get install -t unstable -y --no-install-recommends \
        littler \
                r-cran-littler \
        r-base=${R_BASE_VERSION}* \
        r-base-dev=${R_BASE_VERSION}* \
        r-recommended=${R_BASE_VERSION}* \
        && echo 'options(repos = c(CRAN = "https://cran.rstudio.com/"), download.file.method = "libcurl")' >> /etc/R/Rprofile.site \
        && echo 'source("/etc/R/Rprofile.site")' >> /etc/littler.r \
    && ln -s /usr/share/doc/littler/examples/install.r /usr/local/bin/install.r \
    && ln -s /usr/share/doc/littler/examples/install2.r /usr/local/bin/install2.r \
    && ln -s /usr/share/doc/littler/examples/installGithub.r /usr/local/bin/installGithub.r \
    && ln -s /usr/share/doc/littler/examples/testInstalled.r /usr/local/bin/testInstalled.r \
    && install.r docopt \
    && rm -rf /tmp/downloaded_packages/ /tmp/*.rds \
    && rm -rf /var/lib/apt/lists/*

但我不知道这个垃圾是什么。我只需要安装R然后我将安装所需的软件包,如上所述。

编辑:我的docker文件中的第一行安装node4。

3 个答案:

答案 0 :(得分:3)

这里有两个用于安装Python,R和NodeJS的DockerFile

第一个安装Python 3.4.2,R 3.1.1和nodejs 4.8.4:

From node:4
RUN apt-get update && apt-get remove -y python && apt-get install -y python3 r-base
RUN cp /usr/bin/python3 /usr/bin/python

第二个安装Python 3.5.3,R 3.4.1和nodejs 4.8.4:

From r-base:3.4.1
RUN apt-get update && apt-get install -y python3 nodejs
RUN cp /usr/bin/python3 /usr/bin/python

选择最适合您需求的那个。

答案 1 :(得分:1)

如果您的公共基本图像(您自己图像的基本图像)确实是节点:4,那么它不是基于yum而是基于apt-get来管理包。

因此,您应按以下方式安装R:

RUN apt-get update && apt-get install -y r-base

答案 2 :(得分:-1)