34 lines
1.8 KiB
YAML
34 lines
1.8 KiB
YAML
# 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.8 # проверь актуальный стабильный тег в 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
|