bone_2026/Dockerfile

38 lines
1.1 KiB
Docker

# DXA Quality Assessment - Docker Container (CPU only, Python 3.11)
# Build: docker build -t dxa-quality .
# Run: docker run -v /path/to/data:/data -p 8000:8000 dxa-quality
FROM python:3.11-slim AS builder
RUN apt-get update && apt-get install -y \
build-essential \
ninja-build \
libgl1 \
libglib2.0-0 \
libsm6 \
libxext6 \
libxrender1 \
libgomp1 \
&& rm -rf /var/lib/apt/lists/*
# Свежий meson (0.64.0+) — ДО установки Python-пакетов
RUN pip3 install --no-cache-dir "meson>=0.64.0"
WORKDIR /app
# Устанавливаем пакеты без жёстких пинов — pip сам разрешит зависимости
RUN pip3 install --no-cache-dir \
fastapi uvicorn torch torchvision monai TotalSegmentator \
nibabel pydicom pydicom-seg opencv-python-headless \
scikit-learn scipy pandas numpy openpyxl matplotlib timm \
python-multipart
COPY . .
RUN mkdir -p models
EXPOSE 8000
ENV PYTHONUNBUFFERED=1
ENV PYTHONPATH=/app
CMD ["python3", "-m", "uvicorn", "src.main:app", "--host", "0.0.0.0", "--port", "8000"]