Files
sysops 5f0c7a7e6d feat(PROJ-27): Docker-Support + install.sh v2.0 (native + Docker-Modus)
Adds multi-stage Dockerfiles (Go+Xapian CGO, Next.js standalone),
docker-compose.yml, webhook-basierter Deploy-Flow und erweitertes
install.sh mit interaktiver Modus-Auswahl.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-31 10:18:11 +02:00

32 lines
958 B
Docker

# ── Stage 1: Next.js Build ────────────────────────────────────────────────────
FROM node:22-bookworm-slim AS node-builder
WORKDIR /build
COPY package.json package-lock.json ./
RUN npm ci
COPY . .
RUN npm run build
# ── Stage 2: Runtime (Next.js standalone) ─────────────────────────────────────
FROM node:22-bookworm-slim
WORKDIR /app
RUN useradd --system --shell /bin/false --uid 998 --create-home nextjs
COPY --from=node-builder /build/.next/standalone ./
COPY --from=node-builder /build/.next/static ./.next/static
COPY --from=node-builder /build/public ./public
RUN chown -R nextjs:nextjs /app
USER nextjs
EXPOSE 3000
ENV PORT=3000
ENV HOSTNAME=0.0.0.0
# NEXT_PUBLIC_API_URL wird zur Laufzeit gesetzt (docker-compose environment)
CMD ["node", "server.js"]