使用Dockerfile制作R语言镜像的时候报错了:
tar: R-4.1.0.tar.gz: Cannot read: Is a directory
tar: At beginning of tape, quitting now
tar: Error is not recoverable: exiting now
检查了一下dockerfile文件
解决思路:
把ADD换成COPY。
原因:
ADD:将本地文件添加到容器中,tar类型文件会自动解压(网络压缩资源不会被解压),可以访问网络资源,类似wget
COPY:功能类似ADD,但是是不会自动解压文件,也不能访问网络资源
ADD和COPY在功能上相似,一般来说,COPY是优选的.那是因为它比ADD更透明. COPY仅支持将本地文件基本复制到容器中,而ADD具有一些不是很明显的功能. > ADD允许成为URL>如果ADD的参数是以识别的压缩格式存档,则将解压缩