diff --git a/backend/Dockerfile b/backend/Dockerfile index 2c301677..b39278e3 100644 --- a/backend/Dockerfile +++ b/backend/Dockerfile @@ -2,6 +2,13 @@ # Image: code.cannabrands.app/creationshop/dispensary-scraper FROM code.cannabrands.app/creationshop/node:20-slim AS builder +# Install build tools for native modules (bcrypt, sharp) +RUN apt-get update && apt-get install -y \ + python3 \ + build-essential \ + --no-install-recommends \ + && rm -rf /var/lib/apt/lists/* + WORKDIR /app COPY package*.json ./ @@ -10,6 +17,9 @@ RUN npm install COPY . . RUN npm run build +# Prune dev dependencies for smaller production image +RUN npm prune --production + # Production stage FROM code.cannabrands.app/creationshop/node:20-slim @@ -32,7 +42,7 @@ RUN apt-get update && apt-get install -y \ fonts-liberation \ libnss3 \ libxss1 \ - libasound2 \ + libasound2t64 \ libatk-bridge2.0-0 \ libgtk-3-0 \ --no-install-recommends \ @@ -44,8 +54,7 @@ ENV PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium WORKDIR /app COPY package*.json ./ -RUN npm install --omit=dev - +COPY --from=builder /app/node_modules ./node_modules COPY --from=builder /app/dist ./dist # Copy migrations for auto-migrate on startup