tans-agents-ui / Dockerfile
Tan
feat(stream): ChatGPT-style blinking cursor + token-level auto-scroll
f187797
Raw
History Blame Contribute Delete
866 Bytes
# Multi-stage build for Next.js 15 standalone on HuggingFace Spaces (port 7860)
FROM node:20-alpine AS deps
WORKDIR /app
COPY package.json package-lock.json* ./
RUN npm install --no-audit --no-fund
FROM node:20-alpine AS builder
WORKDIR /app
COPY --from=deps /app/node_modules ./node_modules
COPY . .
ENV NEXT_TELEMETRY_DISABLED=1
RUN npm run build
FROM node:20-alpine AS runner
WORKDIR /app
ENV NODE_ENV=production
ENV NEXT_TELEMETRY_DISABLED=1
ENV PORT=7860
ENV HOSTNAME=0.0.0.0
# HF Spaces requires running as a non-root user with uid 1000.
# node:20-alpine already ships with a `node` user at uid 1000 — reuse it.
COPY --from=builder --chown=node:node /app/public ./public
COPY --from=builder --chown=node:node /app/.next/standalone ./
COPY --from=builder --chown=node:node /app/.next/static ./.next/static
USER node
EXPOSE 7860
CMD ["node", "server.js"]