FROM python:3.12-slim

WORKDIR /app

# Install uv for fast dependency management
COPY --from=ghcr.io/astral-sh/uv:latest /uv /usr/local/bin/uv

# Copy project files
COPY pyproject.toml uv.lock README.md ./
COPY src/ src/

# Install dependencies (production only)
RUN uv sync --no-dev --frozen

# Data volume for SQLite database
RUN mkdir -p /app/data
VOLUME /app/data

# Only set non-secret defaults that are always the same in Docker context
ENV BYBIT_MCP_TRANSPORT=streamable-http
ENV BYBIT_MCP_HOST=0.0.0.0
ENV BYBIT_MCP_DB_PATH=/app/data/bybit_mcp.db

EXPOSE 8000

CMD ["uv", "run", "bybit-mcp-server"]
