Docker构建vue/quasar项目时quasar build返回非零错误码1如何解决
问题根源
从构建日志可以看到,Quasar CLI提示Unknown command "build",同时提示需要在Quasar项目目录下执行命令才能识别build等项目级命令。你的Dockerfile缺失WORKDIR声明,所有文件拷贝、命令执行都默认在系统根目录/下进行,Quasar CLI无法读取到项目根目录下的quasar.conf.js配置文件,因此无法识别当前目录为Quasar项目,自然没有build命令可用。
解决方案
修正Dockerfile,增加工作目录声明,同时可以移除无用的vue/cli全局安装步骤优化构建效率,修正后的Dockerfile如下:
FROM node:latest as build-stage # 指定工作目录,所有后续操作都在该目录下执行 WORKDIR /app COPY package*.json ./ RUN npm install RUN npm -g install @quasar/cli COPY ./ . RUN quasar build FROM nginx as production-stage RUN mkdir /app # 注意此处构建产物路径要加上工作目录前缀 /app COPY --from=build-stage /app/dist/spa /app COPY nginx.conf /etc/nginx/nginx.conf
补充检查项
如果修改后仍有问题,可以检查项目下的.dockerignore文件,确认没有排除quasar.conf.js等Quasar项目必需的配置文件。
内容的提问来源于stack exchange,提问作者Imnotapotato
相关产品推荐
相关产品推荐

