diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..be597a5 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,34 @@ +# 使用 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"]