问题描述
如果有人对此有解决方案,我将不胜感激,因为我已经为此挠头数周了..
问题来了:我有一个使用 ZingChart-Vue 和 Vue-Multiselect 的 Vue 应用程序。当我执行 npm run serve
时,它完美地服务于端口 8080。当我执行 npm run build
时,它完美地构建。但是,当我执行 docker-compose up 时,这两件事(ZingChart-Vue 和 Vue-Multiselect)搞砸了。
这是错误:https://i.stack.imgur.com/tOXgk.png
此应用程序旨在用于使用 github 操作的 CI/CD 管道,但当然它也会出现错误:https://i.stack.imgur.com/PFAQK.png
这是 package.json 文件:https://www.codepile.net/pile/QeboY1mw
这是 package-lock.json 文件:https://www.codepile.net/pile/NDGRXY90
这是 docker 文件:
FROM node:12-alpine as application_modules
workdir /usr/src/app
copY package*.json ./
RUN npm install
# Test and lint and Prod build
FROM node:12-alpine as prod_build
workdir /usr/src/app
copY . .
copY --from=application_modules /usr/src/app/node_modules ./node_modules
RUN npm test && npm run lint && npm run build
# Install Server dependencies
FROM node:12-alpine as server_modules
workdir /usr/src/app
copY container-package.json ./package.json
RUN npm install
# Start Server
FROM node:12-alpine
workdir /usr/src/app
copY --from=prod_build /usr/src/app/dist ./dist
copY --from=server_modules /usr/src/app/node_modules ./node_modules
copY server.js ./
copY container-package.json ./package.json
ENV PORT=8080
EXPOSE 8080
CMD ["npm","start"]
解决方法
实际错误是什么?在您的屏幕截图中,您显示了堆栈跟踪,但没有显示实际的错误消息。由于某些原因,这些软件包(ZingChart、Zingchart-Vue 和 Vue-Multiselect)似乎确实没有安装在 npm install
上 - 让我们知道该错误消息是什么,我们可以继续调查!>
-- ZingSoft 团队
,我找到了答案 - 确保在管道上安装 Git(可能最好在安装节点后立即安装!)