Docker 撰写,webpack 权限被拒绝

use*_*774 5 docker webpack docker-compose

我正在尝试在节点应用程序的 docker 容器内运行 webpack。我收到以下错误。

sh: 1: webpack: Permission denied
Run Code Online (Sandbox Code Playgroud)

Dockerfile 在正常构建上运行良好。

FROM node

# Create app directory
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
COPY package.json /usr/src/app/

RUN npm install

# Bundle app source
COPY . /usr/src/app

EXPOSE 3001

#This launches webpack which fails.
CMD [ "npm", "start" ] 
Run Code Online (Sandbox Code Playgroud)

Sep*_*ram 0

我遇到了同样的问题,因为我正在将现有项目迁移到 docker。我通过不复制整个项目内容(COPY . /usr/src/app在 docker 文件中)而只复制实际需要的文件和目录来解决这个问题。

就我而言,复制整个项目时添加的不必要的目录包括node_modulesbuild 目录和整个.gitrepo 目录。

我仍然不知道为什么复制整个目录不起作用(某些内容与某些内容冲突?某些内容具有不正确的权限?),但无论如何,仅复制您需要的内容对于图像大小来说更好。