build(Dockerfile): 使用 pnpm 替代 npm 进行包管理
Some checks failed
continuous-integration/drone/push Build is failing

- 安装 pnpm 和全局依赖
- 更新包管理配置,使用 pnpm 安装开发期依赖
- 修改构建命令为 pnpm run build
- 更新启动命令为 pnpm start
- 调整相关文件名以适应 pnpm
This commit is contained in:
lixin 2025-01-10 13:02:23 +08:00
parent eecc828ac0
commit 1387bf0090

View File

@ -1,4 +1,3 @@
FROM node:lts-alpine
WORKDIR /app
@ -15,19 +14,24 @@ ENV TZ="Asia/Shanghai"
# 如果各公司有自己的私有源可以替换registry地址,如使用官方源注释下一行
RUN npm config set registry https://registry.npmmirror.com
# 安装开发期依赖
COPY package.json ./package.json
# 安装 pnpm 和全局依赖
RUN npm install -g pnpm
RUN pnpm config set registry https://registry.npmmirror.com
# 安装开发期依赖
COPY package.json ./package.json
RUN pnpm install
# 构建项目
COPY . .
RUN npm run build
RUN pnpm run build
# 删除开发期依赖
RUN rm -rf node_modules && rm package-lock.json
RUN rm -rf node_modules && rm pnpm-lock.yaml
# 安装生产环境依赖
RUN pnpm install
# 如果端口更换,这边可以更新一下
EXPOSE 8001
CMD ["npm", "run", "start"]
CMD ["pnpm", "start"]