| 123456789101112131415161718192021222324252627282930313233343536373839 |
- FROM node:24-alpine AS admin-web-builder
- WORKDIR /admin-web
- COPY admin-web/package.json admin-web/package-lock.json ./
- RUN npm ci
- COPY admin-web/ ./
- RUN npm run build
- FROM python:3.12-slim-bullseye AS python-base
- WORKDIR /wbb
- ENV DEBIAN_FRONTEND=noninteractive
- ENV PYTHONUNBUFFERED=1
- ENV UV_NO_DEV=1
- RUN apt-get update -y && apt-get install -y --no-install-recommends \
- build-essential \
- ca-certificates \
- curl \
- gcc \
- git \
- iputils-ping \
- && rm -rf /var/lib/apt/lists/*
- ADD https://astral.sh/uv/install.sh /uv-installer.sh
- RUN sh /uv-installer.sh && rm /uv-installer.sh
- ENV PATH="/root/.local/bin/:$PATH"
- COPY .python-version pyproject.toml uv.lock ./
- RUN uv sync --frozen --no-dev
- COPY . .
- COPY --from=admin-web-builder /admin-web/dist /wbb/admin-web/dist
- EXPOSE 8088
- ENTRYPOINT ["uv", "run", "--no-sync", "python", "launcher.py"]
|