运行 docker 容器内的 azcopy 抛出 spawn EACCES 错误

Running azcopy inside docker container throws spawn EACCES error

我创建了以下 docker 文件:

FROM node:12.14.0-alpine
RUN apk upgrade --update-cache --available && \
    apk add openssl && \
    apk add --no-cache --virtual python libc6-compat make g++ pkgconf libsecret-dev && \
    rm -rf /var/cache/apk/*

RUN apk update && apk add ca-certificates && rm -rf /var/cache/apk/*
WORKDIR /app

COPY . .

RUN npm install --registry https://registry.npmjs.org @azure-tools/azcopy-node

EXPOSE 8080
CMD ["npm", "run", "start"]

当 运行 在容器内执行 azcopy 命令时,出现以下错误:

spawn /app/node_modules/@azure-tools/azcopy-linux/dist/bin/azcopy_linux_amd64 EACCES

我该如何解决?

我必须在 docker 文件中添加对 azprocess 的权限,现在可以了:

FROM node:12.14.0-alpine
RUN apk upgrade --update-cache --available && \
    apk add openssl && \
    apk add --no-cache --virtual python libc6-compat make g++ pkgconf libsecret-dev && \
    rm -rf /var/cache/apk/*

RUN apk update && apk add ca-certificates && rm -rf /var/cache/apk/*
WORKDIR /app

COPY . .

RUN npm install --registry https://registry.npmjs.org @azure-tools/azcopy-node
RUN chmod a+x /app/node_modules/@azure-tools/azcopy-linux/dist/bin/azcopy_linux_amd64

EXPOSE 8080
CMD ["npm", "run", "start"]