diff --git a/Dockerfile b/Dockerfile index 3b6f912..156415e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -13,9 +13,6 @@ RUN corepack enable RUN yarn install --immutable -# install Chromium + all system dependencies for Playwright -RUN npx playwright install --with-deps chromium - COPY tsconfig.json ./ COPY prisma ./prisma COPY src ./src @@ -26,16 +23,18 @@ RUN yarn prisma generate FROM node:22-slim AS runner WORKDIR /app -RUN apt-get update && apt-get install -y --no-install-recommends \ - openssl \ - libnss3 libnspr4 libatk1.0-0 libatk-bridge2.0-0 libcups2 \ - libdrm2 libxkbcommon0 libxcomposite1 libxdamage1 libxfixes3 \ - libxrandr2 libgbm1 libasound2 \ - && rm -rf /var/lib/apt/lists/* +RUN apt-get update && apt-get install -y --no-install-recommends openssl && rm -rf /var/lib/apt/lists/* RUN corepack enable && npm install -g opencode-ai -COPY --from=builder /root/.cache/ms-playwright /root/.cache/ms-playwright COPY --from=builder /app/node_modules ./node_modules + +# Copy Playwright browser binary and install only system deps (no re-download) +# install Chromium + all system dependencies for Playwright +RUN npx playwright install --with-deps chromium + +COPY --from=builder /root/.cache/ms-playwright /root/.cache/ms-playwright +RUN npx playwright install-deps chromium + COPY --from=builder /app/src ./src COPY --from=builder /app/prisma ./prisma COPY package.json yarn.lock .yarnrc.yml tsconfig.json ./