35 lines
831 B
Docker
35 lines
831 B
Docker
# 使用 Node.js v20.14.0 版本的 slim 官方镜像作为基础镜像
|
|
FROM node:20.14.0-slim
|
|
|
|
# 创建并设置工作目录
|
|
WORKDIR /app
|
|
|
|
# 安装 pnpm 包管理器
|
|
RUN npm install -g pnpm
|
|
|
|
# 复制 package.json 和 pnpm 工作空间配置文件(如果有)
|
|
COPY package.json ./
|
|
|
|
# 使用国内镜像源(如果网络连接较慢)
|
|
#RUN pnpm config set registry https://registry.npm.taobao.org
|
|
# 安装所有依赖(包括开发依赖)
|
|
# RUN pnpm install --production=false
|
|
|
|
# 安装项目依赖
|
|
#RUN pnpm install
|
|
|
|
# 复制项目的所有文件
|
|
COPY . .
|
|
|
|
# 确保依赖干净、无缓存问题
|
|
RUN rm -rf node_modules && pnpm store prune && pnpm install --production=false
|
|
|
|
# 构建应用
|
|
RUN pnpm run build
|
|
|
|
# 暴露应用端口
|
|
EXPOSE 3000
|
|
|
|
# 启动应用
|
|
CMD ["pnpm", "run", "start"]
|