如何在 docker 容器中安装旧版本的 r 包

Posted

技术标签:

【中文标题】如何在 docker 容器中安装旧版本的 r 包【英文标题】:How to install in a docker container an old version of a r package 【发布时间】:2020-05-26 07:22:56 【问题描述】:

如何在 docker 容器中安装 ggplot2 2.2.1?

命令行

RUN R -e "install.packages('devtools', repos='http://cran.rstudio.com/')"
RUN R -e "devtools::install_github('http://github.com/tidyverse/ggplot2/archive/v2.2.1.tar.gz')"

在 Dockerfile 中给了我错误:

The command '/bin/sh -c R -r "devtools::install_github('https://github.com/tidyverse/ggplot2/archive/v2.2.1.tar.gz')"' returned a non-zero code: 2

如果我删除该行

RUN R -e "devtools::install_github('http://github.com/tidyverse/ggplot2

没有出现错误。我还尝试了不同的方法来安装 ggplot2 2.2.1,但都导致了相同的结果/错误。

【问题讨论】:

您是否尝试过使用 docker build -f 显式定义 Dockerfile 位置?这是一个经常被忽视的细节,它会返回您收到的错误。 不起作用...同样的错误。没有 RUN R -e "devtools::install_github('github.com/tidyverse/ggplot2/archive/v2.2.1.tar.gz')" 我可以构建图像 现在我得出的结论是没有正确安装devtools。显然,在 linux 下需要额外的包,我仍然需要找出来。这些在开头安装:gdebi-core\pandoc\pandoc-citeproc\libcurl4-gnutls-dev\libcairo2-dev\libxt-dev\libssl-dev\libxml2-dev 【参考方案1】:

我通过更改命令解决了问题

RUN R -e "install.packages('devtools', repos='http://cran.rstudio.com/', dependencies = TRUE)"

现在 devtools 已正确安装。

【讨论】:

以上是关于如何在 docker 容器中安装旧版本的 r 包的主要内容,如果未能解决你的问题,请参考以下文章

如何在Docker容器中安装RabbitMQ

如何在Docker容器中安装RabbitMQ

如何在 XCode 4.2.1 (SDK5.0) 中安装旧版 iOS 模拟器

Docker容器中安装Docker

如何在docker中安装ubuntu系统

如何在 Docker 映像中安装 grails?