1
1
# Use Node 23 instead of 20
2
- FROM --platform=linux/amd64 node:23.1.0
2
+ FROM node:23.1.0
3
+
3
4
4
5
# Install node-gyp and node-waf
5
- RUN npm install -g node-gyp node-waf
6
+ RUN npm install -g node-gyp node-waf pnpm
6
7
7
8
# Install system dependencies and Playwright dependencies in one layer
8
9
RUN apt-get update && apt-get install -y \
@@ -31,28 +32,22 @@ RUN apt-get update && apt-get install -y \
31
32
&& rm -rf /var/lib/apt/lists/*
32
33
33
34
# Install pnpm
34
- RUN corepack enable pnpm
35
+ # RUN corepack enable pnpm
35
36
36
37
# Set working directory
37
38
WORKDIR /app
38
39
39
40
# Copy package files first
40
- COPY package.json pnpm-workspace.yaml pnpm-lock.yaml .npmrc ./
41
- COPY packages/core/package.json ./packages/core/
42
- COPY packages/agent/package.json ./packages/agent/
41
+ COPY . .
43
42
44
43
# Install dependencies
45
- RUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm install --include=optional sharp --frozen-lockfile
44
+ # RUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm install --frozen-lockfile --include=optional sharp
45
+ RUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm install -w
46
+ RUN --mount=type=cache,id=pnpm,target=/pnpm/store pnpm install --include=optional sharp -w
46
47
47
48
# Clean node_modules before copying source
48
49
RUN rm -rf packages/*/node_modules
49
50
50
- # Copy source files
51
- COPY . .
52
-
53
- # Reinstall and build
54
- RUN pnpm install --include=optional sharp
55
-
56
51
# Build all packages
57
52
RUN pnpm build
58
53
@@ -65,4 +60,4 @@ ENV PORT=3000
65
60
USER node
66
61
67
62
# Start the application
68
- RUN pnpm start
63
+ CMD [ " pnpm" , " start" ]
0 commit comments