tar:无法读取:是docker中的目录

whi*_*cko 19 tar docker

我想添加一个archive(.tar.gz)并在使用Dockerfile创建映像时解压缩它.

ADD archive.tar.gz /archive.tar.gz
RUN tar xzf archive.tar.gz
Run Code Online (Sandbox Code Playgroud)

当我想解压缩档案时,我收到以下消息:

tar: /archive.tar.gz: Cannot read: Is a directory
tar: At beginning of tape, quitting now
tar: Error is not recoverable: exiting now
Run Code Online (Sandbox Code Playgroud)

这对我没有任何意义,因为该文件archive.tar.gz不是目录.

whi*_*cko 29

运行docker镜像的中间提交后,我可以看到,这/archive.tar.gz确实是一个目录.这意味着在图像创建期间添加存档时,docker会自动提取存档.

现在我也可以在docker文档中找到这个文档.

(编辑:文件,例如.sql.gz,在添加时不解压缩)

  • "如果<src>是一个识别出的压缩格式的本地tar存档(identity,gzip,bzip2或xz),那么它将被解压缩为一个目录." - 哇,真奇怪的事:D谢谢你的信息! (4认同)