26 lines
852 B
Docker
26 lines
852 B
Docker
# Build from the project root: docker build -f s2s-client/Dockerfile -t s2s-client .
|
|
# Serve backend APIs, the WebSocket proxy, and shared project documentation.
|
|
# Run the React/Vite frontend separately; this image contains no browser UI.
|
|
# HF Spaces (sdk: docker) routes traffic to $PORT, default 7860.
|
|
FROM python:3.12.14-slim
|
|
|
|
COPY --from=ghcr.io/astral-sh/uv:0.12.5 /uv /uvx /bin/
|
|
|
|
ENV UV_LINK_MODE=copy \
|
|
UV_PYTHON_DOWNLOADS=never \
|
|
PATH="/app/s2s-client/.venv/bin:$PATH"
|
|
|
|
WORKDIR /app/s2s-client
|
|
|
|
COPY s2s-client/pyproject.toml s2s-client/uv.lock ./
|
|
RUN uv sync --locked --no-dev --no-install-project
|
|
|
|
COPY s2s-client/README.md s2s-client/server.py ./
|
|
COPY s2s-client/s2s_client/ ./s2s_client/
|
|
COPY docs/ /app/docs/
|
|
RUN uv sync --locked --no-dev
|
|
|
|
EXPOSE 7860
|
|
|
|
CMD ["uvicorn", "s2s_client.main:app", "--host", "0.0.0.0", "--port", "7860"]
|