Files
webclone/services/crawler/Dockerfile
T
2025-12-25 12:02:07 -03:00

37 lines
840 B
Docker

FROM node:18-alpine
# Install Chromium and dependencies for Puppeteer
RUN apk add --no-cache \
chromium \
nss \
freetype \
freetype-dev \
harfbuzz \
ca-certificates \
ttf-freefont
# Tell Puppeteer to skip installing Chromium. We'll be using the installed package.
ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true \
PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium-browser
WORKDIR /app
# Copy package files
COPY services/crawler/package*.json ./
COPY packages/database/package*.json ./packages/database/
COPY packages/shared/package*.json ./packages/shared/
COPY packages/types/package*.json ./packages/types/
# Install dependencies
RUN npm ci --only=production
# Copy source code
COPY services/crawler/src ./src
COPY packages ./packages
# Build the application
RUN npm run build
EXPOSE 3001
CMD ["npm", "start"]