Test / Dockerfile
vladpp91's picture
Deploy free-claude-code FastAPI proxy as Docker space
6172a47
FROM ghcr.io/astral-sh/uv:python3.14-bookworm-slim
# Create non-root user (HF Spaces convention: UID 1000)
RUN useradd -m -u 1000 user
USER user
ENV HOME=/home/user \
PATH=/home/user/.local/bin:$PATH \
UV_LINK_MODE=copy
WORKDIR /home/user/app
# Install dependencies first for caching
COPY --chown=user:user pyproject.toml uv.lock ./
RUN uv sync --frozen --no-install-project --no-dev
# Copy source
COPY --chown=user:user . .
# Sync project (after copy, so package metadata is available)
RUN uv sync --frozen --no-dev
ENV PATH="/home/user/app/.venv/bin:$PATH"
ENV PORT=7860
EXPOSE 7860
CMD ["sh", "-c", "uvicorn server:app --host 0.0.0.0 --port ${PORT}"]