- Replace Playwright base image with python:3.12-slim in Dockerfile - Remove playwright from pyproject.toml dependencies - Remove ensure_playwright_browsers() function from mcp_server_main.py - Delete KİK v1 client files (client.py, models.py) - v2 uses httpx - Delete postinstall.sh Playwright installation script - Delete obsolete setup.py and requirements.txt.bak - Remove saidsurucu-yargi-mcp-f5fa007 snapshot directory - Update client_v2.py docstring to reflect httpx usage - Regenerate uv.lock without playwright KİK v2 now uses pure httpx for all HTTP operations with SSL legacy support.
34 lines
1.2 KiB
Docker
34 lines
1.2 KiB
Docker
# -------- BASE IMAGE ---------------------------------------------------------
|
|
FROM python:3.12-slim
|
|
|
|
# -------- Runtime setup ----------------------------------------------------
|
|
WORKDIR /app
|
|
|
|
# Copy dependency manifests first for layer-cache
|
|
COPY pyproject.toml poetry.lock* requirements*.txt* ./
|
|
|
|
# Fast, deterministic install with `uv`
|
|
RUN pip install --no-cache-dir uv && \
|
|
uv pip install --system --no-cache-dir . && \
|
|
uv pip install --system --no-cache-dir .[asgi,saas]
|
|
|
|
# Cache buster - force rebuild
|
|
ARG CACHE_BUST=202510061202
|
|
RUN echo "Cache bust: $CACHE_BUST"
|
|
|
|
# Copy application source
|
|
COPY . .
|
|
|
|
# -------- Environment ------------------------------------------------------
|
|
ENV PYTHONUNBUFFERED=1
|
|
ENV ENABLE_AUTH=true
|
|
ENV PORT=8000
|
|
|
|
# -------- Health check -----------------------------------------------------
|
|
HEALTHCHECK --interval=30s --timeout=10s --start-period=10s --retries=3 \
|
|
CMD python -c "import httpx, os, sys; r=httpx.get(f'http://localhost:{os.getenv(\"PORT\",\"8000\")}/health'); sys.exit(0 if r.status_code==200 else 1)"
|
|
|
|
EXPOSE 8000
|
|
|
|
# -------- Entrypoint -------------------------------------------------------
|
|
CMD ["uvicorn", "asgi_app:app", "--host", "0.0.0.0", "--port", "8000", "--proxy-headers"] |