File size: 1,326 Bytes
eec0516
 
d0387d9
eec0516
 
 
 
 
 
 
 
 
 
 
d0387d9
eec0516
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# syntax=docker/dockerfile:1
FROM python:3.10-slim

ENV PYTHONUNBUFFERED=1 \
    PIP_PROGRESS_BAR=on \
    PIP_DEFAULT_TIMEOUT=120 \
    PIP_NO_CACHE_DIR=1 \
    HF_HOME=/app/.cache/huggingface \
    XDG_CACHE_HOME=/app/.cache \
    MPLCONFIGDIR=/app/.config/matplotlib \
    OPENVINO_TELEMETRY=NO \
    OV_TELEMETRY=0 \
    HF_HUB_ENABLE_TELEMETRY=0 \
    HOME=/app

RUN apt-get update && apt-get install -y --no-install-recommends \
    git ca-certificates curl && \
    rm -rf /var/lib/apt/lists/*

RUN mkdir -p /app /app/.cache/huggingface /app/.cache /app/.config/matplotlib
WORKDIR /app

COPY requirements.txt ./requirements.txt
RUN pip install --upgrade pip && pip install -r requirements.txt -v

# sanity-check ساده، بدون heredoc
RUN python -c "import importlib, openvino, transformers, diffusers; \
from importlib.metadata import version; \
print('OpenVINO:', openvino.__version__); \
print('Transformers:', transformers.__version__); \
print('Diffusers:', diffusers.__version__); \
print('Optimum:', version('optimum')); \
importlib.import_module('optimum.intel.openvino'); \
from optimum.intel.openvino import OVStableDiffusionPipeline; \
print('OK: OVStableDiffusionPipeline import passed')"

COPY app.py ./app.py

EXPOSE 7860
CMD [\"uvicorn\", \"app:app\", \"--host\", \"0.0.0.0\", \"--port\", \"7860\"]