# Bifrost — LLM-gateway (github.com/maximhq/bifrost). Единый OpenAI-совместимый # шлюз для AI-фич других приложений (сейчас — tududi). За ним провайдер DeepSeek. # Клиенты ходят в него по имени bifrost_app:8080 в общей web_proxy_network и про # провайдера/модель ничего не знают — роутинг решает config.json. # See versions: https://hub.docker.com/r/maximhq/bifrost/tags # # В контейнере Bifrost слушает 8080 (дефолт). Наружу host-порт НЕ пробрасываем: # веб-UI (Dashboard + Logs) и API доступны только через Caddy # (bifrost.vakhrushev.me, за Authelia forward_auth) и внутри web_proxy_network. # # App-dir Bifrost по умолчанию — /app/data; туда монтируется config_dir с # config.json (источник правды, с секретами, 0600). SQLite-сторы config.db / # logs.db вынесены в data_dir -> /app/store (пути заданы явно в config.json). services: bifrost_app: image: maximhq/bifrost:v1.6.3 # проверь актуальный стабильный тег в releases container_name: bifrost_app restart: unless-stopped user: "{{ owner_create_result.uid }}:{{ owner_create_result.group }}" networks: - "web_proxy_network" volumes: # App-dir: config.json (рендерит плейбук). - "{{ config_dir }}:/app/data" # Сторы, создаёт и держит сам Bifrost — бекапить не нужно (config.db # восстанавливается из config.json, logs.db — просто логи запросов). - "{{ data_dir }}:/app/store" networks: web_proxy_network: external: true