Docker Container NPM依赖性找不到



我为我的docker容器设置了一个2阶段的构建过程。第一阶段安装git并运行NPM安装。第二阶段从阶段1复制了node_modules,然后从我的主机复制源代码。然后它运行开发服务器。除了开发服务器尝试启动时,一切似乎都在正常工作,这会引发此错误:

" frontend_1 |找不到此依赖性:
frontend_1 |
frontend_1 | * vue-free-transform in ./node_modules/cache-loader/dist/dist/cjs.jss.js?ref--12-0!./node_modules/babel-loader/lib!./node_modules/vuetify-loader-loader/lib/loader.js!./node_modules/cache-loader/cache-loader/dist/dist/cjs.js ?? ref/node_modules/vue-loader/lib ?? vue-loader-options!./src/components/editor/editor/line.vue?vue?vue& type = script& lang =

i执行到容器中并检查了Node_modules文件夹,并确定它位于正确的位置,并且在其中,在其中,在其中,似乎是完整的。该项目是Vue CLI 3项目,所有WebPack/Bower设置都保留在Vue CLI默认设置。

我尝试删除使用的所有卷,清除NPM缓存,然后手动执行到容器中并运行NPM安装。

dockerfile:

FROM node:alpine as builder
WORKDIR /usr/src/app
COPY package.json .
RUN apk add --no-cache git
RUN npm install
FROM node:alpine
WORKDIR /usr/src/app
COPY --from=builder /usr/src/app/node_modules ./node_modules
COPY . .
CMD ["npm", "run", "serve"]

docker-compose:

version: '3'
services:
  frontend:
    build:
      context: .
      dockerfile: Dockerfile.dev
    ports:
      - "8080:8080"
#    volumes:
#      - /usr/src/app/node_modules
#      - .:/usr/src/app
    command: ["npm", "run", "serve"]

我希望开发服务器启动无问题,但是我将错误消息在上方获取。如果我缺少任何重要细节,请告诉我!

好吧,我弄清楚了...像往常一样,这只是一个愚蠢的错误。仓库的拉力很好,但是该模块从未构建过,因此其中没有Dist文件夹。

必须确保使用模块提交DIST文件夹,或在使用NPM安装后构建它。

最新更新