logo
icon

Bifrost

Self-hosted Bifrost AI gateway — OpenAI-compatible API plus dashboard, pinned to v2.0.0, SQLite, no extra services.

template cover
Dideploy0 kali
Penerbitnewcworld
Dibuat2026-09-03
Tag
ToolAIGatewayLLM

Bifrost

Bifrost is an open-source AI gateway. This template follows the official runtime contract (image v2.0.0): one Go process, SQLite on /app/data, dashboard and inference on the same HTTP port.

The stack:

  • bifrostmaximhq/bifrost:v2.0.0 (API, dashboard, SQLite config store, SQLite logs store)

No PostgreSQL, Redis, or extra workers. OSS SQLite is single-replica only.

Resource recommendation

The image is ~87 MB. 0.5–1 vCPU and 512 MB–1 GB RAM is enough for personal or small-team traffic.

Configuration

The gateway domain is required. Dashboard auth is on from first boot (admin / auto-generated password). Find BIFROST_ADMIN_PASSWORD and BIFROST_VIRTUAL_KEY on the bifrost service env tab.

Optional upstream keys (OPENAI_API_KEY, ANTHROPIC_API_KEY, OPENROUTER_API_KEY, DEEPSEEK_API_KEY) are wired through config.json as env.* references. Leave them blank and add providers in the dashboard if you prefer. More providers (Gemini, Azure, Bedrock, Groq, Ollama, …) can be added in the UI without redeploying.

BIFROST_ENCRYPTION_KEY is auto-generated and must stay stable across restarts. Changing it makes persisted secrets unreadable.

First login

Open the gateway domain. Sign in with:

  • username: admin
  • password: BIFROST_ADMIN_PASSWORD from the env tab

Then create extra virtual keys, budgets, or providers in the dashboard.

Quick test

After /health returns 200 and at least one upstream key is set:

curl --fail-with-body --max-time 60 \
  -X POST https://<your-domain>/v1/chat/completions \
  -H "Authorization: Bearer <BIFROST_VIRTUAL_KEY>" \
  -H "Content-Type: application/json" \
  -d '{"model":"openai/gpt-4o-mini","messages":[{"role":"user","content":"Hello"}]}'

Admin basic auth also works: -u admin:<BIFROST_ADMIN_PASSWORD>.

Drop-in OpenAI SDK / GapSeek OPENAI_BASE_URL:

https://<your-domain>/openai

Use BIFROST_VIRTUAL_KEY as OPENAI_API_KEY. Model ids are provider/model, e.g. openai/gpt-4o-mini, anthropic/claude-sonnet-4-5, openrouter/deepseek/deepseek-chat.

What this template includes

NeedThis template
OpenAI-compatible /v1 + /openaiIncluded
Built-in dashboardIncluded (same domain)
Failover / load balance / virtual keysIncluded (configure in UI)
Semantic cache, MCP, extra providersAdd in the dashboard
Multi-replica / HANot included; needs Bifrost Enterprise + PostgreSQL

Do not expose an unauthenticated gateway. Inference calls require the virtual key (or admin basic auth) unless you turn that off in Security settings.

Versioning

Image is pinned to maximhq/bifrost:v2.0.0 by digest (pulled 2026-09-03). Upstream also publishes :latest.

Reference