|
|
@@ -1,26 +1,30 @@
|
|
|
# 使用指定基础镜像
|
|
|
FROM node:20.19.4
|
|
|
|
|
|
-RUN apt-get update
|
|
|
-RUN apt-get install -y python3 build-essential
|
|
|
+# 安装 pnpm
|
|
|
+RUN npm install -g pnpm@10.18.3
|
|
|
|
|
|
# 设置工作目录
|
|
|
WORKDIR /app
|
|
|
|
|
|
-# 复制package.json .npmrc和package-lock.json
|
|
|
-COPY package.json .npmrc package-lock.json* ./
|
|
|
+# 复制根目录配置文件
|
|
|
+COPY package.json pnpm-workspace.yaml .npmrc ./
|
|
|
+
|
|
|
+# 复制各项目 package.json
|
|
|
+COPY web/package.json ./web/
|
|
|
+COPY packages/server/package.json ./packages/server/
|
|
|
|
|
|
# 安装依赖
|
|
|
-RUN npm install
|
|
|
+RUN pnpm install --frozen-lockfile
|
|
|
|
|
|
# 复制项目文件
|
|
|
COPY . .
|
|
|
|
|
|
-# 构建项目
|
|
|
-RUN npm run build
|
|
|
+# 构建 web 应用
|
|
|
+RUN cd web && pnpm run build
|
|
|
|
|
|
# 暴露端口(根据实际需要调整)
|
|
|
-EXPOSE 23972
|
|
|
+EXPOSE 8080
|
|
|
|
|
|
# 启动命令
|
|
|
-CMD ["npm", "run", "start"]
|
|
|
+CMD ["sh", "-c", "cd web && pnpm run start"]
|