[英]Installing R package from source using docker file
我正在尝试使用dockerfile从源代码安装r软件包。 就像这里看到的(为简单起见,使用ggplot2)
FROM rocker/r-ver
COPY . /usr/local/src/myscripts
WORKDIR /usr/local/src/myscripts
RUN R -e 'install.packages("ggplot2_3.0.0.tar.gz", repos = NULL, type = "source")'
CMD ["Rscript", "run.R"]
建立图片后,出现此错误
> install.packages("ggplot2_3.0.0.tar.gz", repos = NULL, type = "source")
Installing package into ‘/usr/local/lib/R/site-library’
(as ‘lib’ is unspecified)
ERROR: dependencies ‘digest’, ‘gtable’, ‘lazyeval’, ‘plyr’, ‘reshape2’,
‘rlang’, ‘scales’, ‘tibble’, ‘viridisLite’, ‘withr’ are not available for
package ‘ggplot2’
* removing ‘/usr/local/lib/R/site-library/ggplot2’
Warning message:
In install.packages("ggplot2_3.0.0.tar.gz", repos = NULL, type = "source")
:>
> installation of package ‘ggplot2_3.0.0.tar.gz’ had non-zero exit status
可以在这里看到docker文件夹中包含的文件
有谁知道我需要添加到dockerfile来解决(如果可能)此错误的问题?
由于您设置了repos = NULL
,因此您需要首先安装所有提到的依赖项,然后再安装它们的依赖项。 您可以手动执行此操作,但弄清所有依赖关系将很麻烦,并且每次更新都会更改。
因此,最好使用本地程序包管理器。 我没有任何个人经验,但是您可以尝试{miniCRAN} 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.