- packages/bridge/Dockerfile: multi-stage build (node:22-alpine) - frontend/Dockerfile: multi-stage build + nginx:alpine - frontend/nginx.conf: proxy /bridge to bridge service - docker-compose.yml: bridge (3456) + frontend (8080) - .dockerignore: exclude backend/node_modules/dist - Fix vite proxy target to port 3456 - .env with bridge vars (AUTH_MODE=dev)
17 lines
580 B
Docker
17 lines
580 B
Docker
FROM node:22-alpine AS frontend-build
|
|
WORKDIR /app/frontend
|
|
COPY frontend/package*.json ./
|
|
RUN npm ci
|
|
COPY frontend/ ./
|
|
RUN npm run build
|
|
|
|
FROM python:3.11-slim AS backend
|
|
WORKDIR /app
|
|
COPY backend/pyproject.toml /app/backend/pyproject.toml
|
|
COPY backend/app /app/backend/app
|
|
COPY --from=frontend-build /app/frontend/dist /app/frontend/dist
|
|
RUN pip install --no-cache-dir -e /app/backend
|
|
ENV KANBAN_UI_AUTH_MODE=telegram \
|
|
KANBAN_UI_FRONTEND_DIST_DIR=/app/frontend/dist
|
|
EXPOSE 8000
|
|
CMD ["uvicorn", "app.main:app", "--app-dir", "backend", "--host", "0.0.0.0", "--port", "8000"]
|