tar: 无法创建目录 'sqljdbc_7.2/': 权限被拒绝 tar: 无法打开 'sqljdbc_7.2/': 是一个目录

tar: can't create directory 'sqljdbc_7.2/': Permission denied tar: can't open 'sqljdbc_7.2/': Is a directory

我正在尝试复制一个文件,然后使用这些命令将其解压缩到 docker 文件中。

#MSSQL SERVER JDBC DRIVER INSTALL
COPY sqljdbc_7.2.2.0_enu.tar.gz /camunda/lib/
WORKDIR /camunda/lib
RUN tar -xf sqljdbc_7.2.2.0_enu.tar.gz
ENV CLASSPATH=${CLASSPATH}:/tmp/sqljdbc_7.2/enu/mssql-jdbc-7.2.2.jre11.jar
ARG CLASSPATH=${CLASSPATH}:/tmp/sqljdbc_7.2/enu/mssql-jdbc-7.2.2.jre11.jar
RUN echo $CLASSPATH

但我得到这个错误:

tar: can't create directory 'sqljdbc_7.2/': Permission denied tar: can't open 'sqljdbc_7.2/': Is a directory

尝试使用 ADD 这将为您 untar 文件:

ADD sqljdbc_7.2.2.0_enu.tar.gz /camunda/lib/

并从 Dockerfile 中删除以下内容:

WORKDIR /camunda/lib
RUN tar -xf sqljdbc_7.2.2.0_enu.tar.gz

来自文档:

If is a local tar archive in a recognized compression format (identity, gzip, bzip2 or xz) then it is unpacked as a directory.