20 lines
538 B
Docker
20 lines
538 B
Docker
FROM node:22-alpine AS frontend
|
|
WORKDIR /build
|
|
COPY frontend/package.json frontend/pnpm-lock.yaml ./
|
|
RUN corepack enable && pnpm install --frozen-lockfile
|
|
COPY frontend/ ./
|
|
RUN pnpm build
|
|
|
|
FROM python:3.12-slim
|
|
WORKDIR /app
|
|
COPY --from=ghcr.io/astral-sh/uv:latest /uv /usr/local/bin/uv
|
|
COPY pyproject.toml uv.lock alembic.ini ./
|
|
RUN uv sync --frozen --no-dev
|
|
COPY backend backend
|
|
COPY worker worker
|
|
COPY migrations migrations
|
|
COPY scripts scripts
|
|
COPY --from=frontend /build/dist backend/static
|
|
EXPOSE 8781
|
|
CMD ["sh", "scripts/start.sh"]
|