- GatewayClient class: WS connection, auto-reconnect, request/response, events - ChatPage with thread list sidebar + message area - Real-time streaming responses via chat events - Thread management with localStorage persistence - Message bubbles with user/assistant/system styles - Build args for VITE_WS_URL and VITE_WS_TOKEN - SPA routing already supported by nginx config
20 lines
423 B
Docker
20 lines
423 B
Docker
FROM oven/bun:1 AS build
|
|
WORKDIR /app
|
|
|
|
ARG VITE_WS_URL=""
|
|
ARG VITE_WS_TOKEN=""
|
|
ENV VITE_WS_URL=$VITE_WS_URL
|
|
ENV VITE_WS_TOKEN=$VITE_WS_TOKEN
|
|
|
|
COPY package.json bun.lock* ./
|
|
RUN bun install --frozen-lockfile 2>/dev/null || bun install
|
|
|
|
COPY . .
|
|
RUN bun run build
|
|
|
|
FROM nginx:alpine
|
|
COPY --from=build /app/dist /usr/share/nginx/html
|
|
COPY nginx.conf /etc/nginx/conf.d/default.conf
|
|
EXPOSE 80
|
|
CMD ["nginx", "-g", "daemon off;"]
|