FROM debian:trixie-slim

ENV DEBIAN_FRONTEND=noninteractive
ENV RIME_USER=/opt/rime-user
ENV RIME_SHARED=/usr/share/rime-data
ENV RIME_LOG=/tmp/rime-log

RUN apt-get update && apt-get install -y --no-install-recommends \
    ca-certificates \
    git \
    build-essential \
    pkg-config \
    python3 \
    python3-venv \
    python3-pip \
    librime-dev \
    librime-bin \
    librime-data \
    librime-plugin-lua \
    librime-plugin-octagram \
    && rm -rf /var/lib/apt/lists/*

RUN git clone -b wanxiang --depth=1 https://github.com/amzxyz/rime_wanxiang.git "$RIME_USER" \
    && mkdir -p "$RIME_LOG" "$RIME_USER/build" \
    && rime_deployer --build "$RIME_USER" "$RIME_SHARED" "$RIME_USER/build"

WORKDIR /app

COPY app.py /app/app.py

RUN python3 -m venv /opt/venv \
    && /opt/venv/bin/pip install --no-cache-dir fastapi "uvicorn[standard]" pydantic

EXPOSE 8000

CMD ["/opt/venv/bin/uvicorn", "app:app", "--host", "0.0.0.0", "--port", "8000"]