Ctrl K
ComunidadGuías…

worklenz-backend/Dockerfile

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
# --- Stage 1: Build ---
FROM node:22-slim AS builder

ARG RELEASE_VERSION
RUN apt-get update && apt-get install -y \
    python3 \
    make \
    g++ \
    curl \
    postgresql-server-dev-all \
    && rm -rf /var/lib/apt/lists/*

WORKDIR /usr/src/app

COPY package*.json ./
RUN npm ci

COPY . .
RUN npm run build

RUN echo "$RELEASE_VERSION" > release

# --- Stage 2: Production Image ---
FROM node:22-slim

RUN apt-get update && apt-get install -y libpq5 && rm -rf /var/lib/apt/lists/*

WORKDIR /app

COPY --from=builder /usr/src/app/package*.json ./
COPY --from=builder /usr/src/app/build ./build
COPY --from=builder /usr/src/app/node_modules ./node_modules
COPY --from=builder /usr/src/app/release ./release
COPY --from=builder /usr/src/app/worklenz-email-templates ./worklenz-email-templates
COPY --from=builder /usr/src/app/scripts/migrate.js ./scripts/migrate.js
COPY --from=builder /usr/src/app/scripts/migrate-bootstrap.js ./scripts/migrate-bootstrap.js
COPY --from=builder /usr/src/app/database/pg-migrations ./database/pg-migrations


EXPOSE 3000
CMD ["node", "build/bin/www"]