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