# Используем стабильный Python 3.10 (slim версия легче) FROM python:3.10-slim # Установка системных зависимостей # libgl1, libglib2.0-0: для работы OpenCV # libzbar0: для сканирования QR-кодов RUN apt-get update && apt-get install -y \ curl \ libgl1 \ libglib2.0-0 \ libzbar0 \ && rm -rf /var/lib/apt/lists/* # Создаем рабочую директорию WORKDIR /app # Сначала копируем зависимости (для кэширования слоев Docker) COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt # Установка сертификатов Минцифры для корректной работы GigaChat (requests использует certifi) RUN curl -k "https://gu-st.ru/content/Other/doc/russian_trusted_root_ca.cer" -w "\n" >> $(python -m certifi) # Копируем код приложения COPY . . # Открываем порт EXPOSE 5000 # Запускаем приложение CMD ["uvicorn", "app.main:app", "--host", "0.0.0.0", "--port", "5000"]