diff --git a/Dockerfile b/Dockerfile index 94123d5..29b2c59 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,18 +1,25 @@ -FROM mcr.microsoft.com/playwright:v1.42.0-jammy +FROM node:20-trixie-slim +ENV DEBIAN_FRONTEND=noninteractive WORKDIR /usr/src/app +# Базовые утилиты, без лишних рекоммендованных пакетов +RUN apt-get update && apt-get install -y --no-install-recommends \ + ca-certificates curl gnupg && \ + rm -rf /var/lib/apt/lists/* + COPY package*.json ./ +RUN npm ci --omit=dev + +# Ставим только headless shell Chromium и его системные зависимости +RUN npx playwright install --with-deps --only-shell && \ + rm -rf /usr/share/doc /usr/share/man /var/cache/apt/* + +# Копируем минимально нужные исходники +COPY server.js ./ +# Если используется игнор-лист как файл — раскомментируйте строку: COPY ignore-domains.txt ./ -RUN npm ci --omit=dev -RUN npx playwright install chromium - -COPY . . - -RUN rm -rf /usr/local/share/doc /usr/local/share/man /usr/local/share/info - EXPOSE 3000 - -CMD ["npm", "start"] +CMD ["node", "server.js"]