CoolFace
Apppublic

ITNovaML/PCAgentinAI

sourceHugging Faceupdated 5mo agoView on Hugging Face
0likes
Dockerfile87 linesDownload Raw Back to root
1# ══════════════════════════════════════════════════════════════════════2# PolicyBridge — HuggingFace Docker Space3# ══════════════════════════════════════════════════════════════════════4# Port  : 7860  (HuggingFace requirement)5# DB    : Clever Cloud MySQL via MYSQL_ADDON_* Secrets6# Models: .pkl files loaded from /app/models/ at runtime7# Workers: 1 — Clever Cloud free tier allows max 5 connections total8# ══════════════════════════════════════════════════════════════════════9FROM python:3.11-slim10 11# ── System dependencies ───────────────────────────────────────────────12RUN apt-get update && apt-get install -y --no-install-recommends \13        gcc \14        default-libmysqlclient-dev \15        pkg-config \16    && apt-get clean \17    && rm -rf /var/lib/apt/lists/*18 19# ── Working directory ─────────────────────────────────────────────────20WORKDIR /app21 22# ── Install Python dependencies ───────────────────────────────────────23COPY requirements.txt .24RUN pip install --no-cache-dir -r requirements.txt25 26# ── Copy application code ─────────────────────────────────────────────27COPY app.py .28COPY train_all_agents.py .29COPY agent1_ssn_kyc.py .30COPY agent2_property_risk.py .31COPY agent3_underwriting.py .32COPY agent4_pricing.py .33COPY agent5_issuance_orchestrator.py .34COPY agent6_audit.py .35COPY agent6_audit_integration.py .36COPY agent7_fnol_intake.py .37COPY agent8_coverage_verify.py .38COPY agent9_fraud_signal.py .39COPY agent10_severity.py .40COPY agent11_triage.py .41COPY agent12_riskradar.py .42 43# ── Copy frontend HTML apps ───────────────────────────────────────────44COPY pc_insurance_multiagent_v4.html .45COPY policybridge_app.html .46 47# ── Copy trained model files ──────────────────────────────────────────48COPY models/ ./models/49 50# ── Create Silver output directory ───────────────────────────────────51RUN mkdir -p silver/kyc_decisions \52             silver/property_risk \53             silver/uw_decisions \54             silver/pricing \55             silver/issued_policies56 57# ── Non-root user (HuggingFace security requirement) ──────────────────58RUN useradd -m -u 1000 appuser \59    && chown -R appuser:appuser /app60USER appuser61 62# ── Environment defaults ──────────────────────────────────────────────63ENV PORT=7860 \64    PYTHONUNBUFFERED=1 \65    PYTHONDONTWRITEBYTECODE=166 67# ── Expose port ───────────────────────────────────────────────────────68EXPOSE 786069 70# ── Health check ──────────────────────────────────────────────────────71HEALTHCHECK --interval=30s --timeout=10s --start-period=15s --retries=3 \72    CMD python -c "import urllib.request; urllib.request.urlopen('http://localhost:7860/status')" \73    || exit 174 75# ── Launch via Gunicorn ───────────────────────────────────────────────76# 1 worker = max 2 DB connections (pool_size=1 + max_overflow=1)77# Clever Cloud free tier: 5 max connections — this leaves 3 free78CMD ["gunicorn", \79     "--bind", "0.0.0.0:7860", \80     "--workers", "1", \81     "--timeout", "120", \82     "--keep-alive", "5", \83     "--log-level", "info", \84     "--access-logfile", "-", \85     "--error-logfile", "-", \86     "app:app"]87