42 lines
1.3 KiB
Docker
42 lines
1.3 KiB
Docker
FROM node:20.19.1-slim AS builder
|
|
|
|
WORKDIR /app/builder
|
|
|
|
COPY package*.json .
|
|
COPY packages/shared-dtos/package*.json ./packages/shared-dtos/
|
|
COPY data-hub/data-connector/package*.json ./data-hub/data-connector/
|
|
|
|
RUN npm ci
|
|
|
|
COPY packages/shared-dtos ./packages/shared-dtos/
|
|
COPY data-hub/data-connector ./data-hub/data-connector/
|
|
|
|
WORKDIR /app/builder/data-hub/data-connector
|
|
|
|
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/data-hub/data-connector/prisma ./prisma
|
|
COPY --from=builder /app/builder/data-hub/data-connector/dist ./dist
|
|
COPY --from=builder /app/builder/data-hub/data-connector/docker-entrypoint.sh .
|
|
|
|
ENTRYPOINT [ "./docker-entrypoint.sh" ]
|
|
|
|
CMD ["node", "./dist/src/main.js" ] |