Ctrl K
ComunidadGuías…

Dockerfile.bots

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

Archivo original ↗Preguntar a KiBot
FROM node:26.12.1-slim AS deps

WORKDIR /app

ENV NODE_OPTIONS=""

RUN apt-get update && apt-get install -y --no-install-recommends \
	python3 make g++ libtool automake autoconf pkg-config libopus-dev ca-certificates \
	&& rm -rf /var/lib/apt/lists/*

COPY package.json package-lock.json ./
RUN npm ci --include=dev

FROM deps AS builder

COPY tsconfig.bots.json ./
COPY src/lib ./src/lib

RUN npx tsc -p tsconfig.bots.json || true

FROM deps AS modules

RUN npm prune --production

FROM node:26.12.1-slim AS runner

WORKDIR /app

RUN apt-get update && apt-get install -y --no-install-recommends \
	ffmpeg libopus0 ca-certificates \
	&& rm -rf /var/lib/apt/lists/*

COPY --from=modules /app/node_modules ./node_modules
COPY package.json ./
COPY otel ./otel
COPY static/wakeword ./static/wakeword
COPY src/lib/backend/bots/official-bot/locales ./src/lib/backend/bots/official-bot/locales
COPY --from=builder /app/bots ./bots

ENV NODE_ENV=production

CMD ["node", "--import", "./otel/console-instrumentation.js", "bots/backend/bots/runner.js"]