使用Docker Compose构建React应用遇package.json找不到错误求助
解决Docker Compose构建React应用时找不到package.json的问题
问题原因
你的Dockerfile将所有文件复制到了/app目录,但执行yarn run build时仍在根目录/下运行,导致yarn找不到package.json文件。
解决方案
在Dockerfile中添加WORKDIR /app指令,指定后续命令的工作目录,确保所有操作都在/app目录下执行。
修改后的完整Dockerfile示例:
FROM node:16.12 as build # 设置工作目录为/app WORKDIR /app COPY package*.json ./ RUN yarn install COPY . ./ RUN yarn run build
补充说明
WORKDIR /app会让后续的COPY、RUN命令默认在/app目录下执行,无需每次手动切换目录。- 也可以通过在RUN命令中指定目录临时解决:
RUN cd /app && yarn run build,但使用WORKDIR是更规范、更易维护的做法。
内容的提问来源于stack exchange,提问作者Shahroz Ramzan
相关产品推荐
相关产品推荐

