FROM node:20.15.1-alpine AS builder WORKDIR /app/builder COPY package.json . COPY package-lock.json . RUN npm install COPY . . RUN npm run build FROM node:20.15.1-alpine # ENV OTEL_TRACES_EXPORTER="otlp" # ENV OTEL_METRICS_EXPORTER="otlp" # ENV OTEL_LOGS_EXPORTER="otlp" # ENV NODE_OPTIONS="--require @opentelemetry/auto-instrumentations-node/register" # To setup your own Service Instance ID # ENV OTEL_RESOURCE_ATTRIBUTES="service.instance.id=avicenna.data-connector" # ENV OTEL_NODE_RESOURCE_DETECTORS="env,host,os" # To have a Service Instance ID generated using a random UUID # Requires auto-instrumentations-node version 0.46.0+ # ENV OTEL_NODE_RESOURCE_DETECTORS="env,host,os,serviceinstance,container" WORKDIR /app COPY --from=builder /app/builder/node_modules ./node_modules COPY --from=builder /app/builder/prisma ./prisma COPY --from=builder /app/builder/dist ./dist COPY --from=builder /app/builder/docker-entrypoint.sh . ENTRYPOINT [ "./docker-entrypoint.sh" ] CMD ["node", "./dist/src/main.js" ]