[INFRA-AI-02] Контейнеризация FastAPI-шлюза и оркестрация локального инференса Ollama

Инфраструктура / MLOps

Published

October 14, 2026

NoteКраткая карточка задачи
  • Репозиторий / Компонент: ai_receipt_vision_gateway.
  • Стек: Docker, Docker Compose, Ollama API.
  • Тип задачи: DevOps / Infra.
  • Статус: Готово к реализации

Описание задачи

Необходимо упаковать разработанный Python-шлюз в Docker-контейнер и настроить совместный запуск веб-сервиса и локального окружения Ollama через Docker Compose для работы инференса на CPU.

Инструкция по шагам

  1. Написание Dockerfile для шлюза: Подготовить файл сборки для FastAPI-приложения на базе легковесного образа python:3.10-slim. Обеспечить установку зависимостей fastapi, pydantic, requests, uvicorn через pip install. Открыть порт 11435.
  2. Проектирование Docker Compose манифеста: Описать две связанные службы:
    • ai-gateway — контейнер с FastAPI. Пробросить порт 11435:11435 и передать переменную окружения OLLAMA_HOST=http://ollama-core:11434.
    • ollama-core — официальный образ ollama/ollama. Пробросить порт 11434:11434. Закрепить Docker Volume для папки /root/.ollama, чтобы скачанные модели не стирались при перезапуске.
  3. Автоматизация загрузки модели (Моделирование сборки): Написать сопутствующий bash-скрипт (или entrypoint), который после старта контейнера ollama-core автоматически выполняет команду внутри контейнера: ollama run llama3.2-vision:11b для предварительного скачивания весов модели на диск.