All Hibou configuration is done via environment variables. Variables use the HIBOU_ prefix.
| Variable |
Default |
Description |
HIBOU_HOST |
0.0.0.0 |
Network interface to bind |
HIBOU_PORT |
8585 |
HTTP port |
HIBOU_DATABASE_URL |
postgres://hibou:hibou@localhost:5432/hibou?sslmode=disable |
PostgreSQL DSN |
HIBOU_LOG_LEVEL |
info |
Minimum log level (debug, info, warn, error) |
HIBOU_LOG_FORMAT |
console |
Output format (console, json) |
HIBOU_SESSION_SECRET |
change-me-in-production |
Cookie encryption key (32+ chars recommended) |
HIBOU_TRIVY_URL |
http://localhost:4954 |
Trivy server endpoint |
HIBOU_OSV_URL |
https://api.osv.dev |
OSV advisory API base URL |
HIBOU_CACHE_TTL |
6h |
Advisory cache TTL (6h, 24h, 30m, etc.) |
| Variable |
Default |
Description |
HIBOU_METRICS_ENABLED |
true |
Serve Prometheus /metrics. false removes it from every port. |
HIBOU_METRICS_PORT |
0 |
Serve Prometheus /metrics on this port only. 0 serves it on HIBOU_PORT. |
HIBOU_METRICS_BEARER_TOKEN |
(empty) |
When set, /metrics requires Authorization: Bearer <token>. |
HIBOU_METRICS_BEARER_TOKEN_FILE |
(empty) |
Read the bearer token from this file. Takes precedence over HIBOU_METRICS_BEARER_TOKEN. |
HIBOU_STORAGE_USAGE_ENABLED |
true |
Sample Postgres and artifact-ledger storage usage. |
HIBOU_STORAGE_USAGE_INTERVAL |
15m |
Sampling interval (minimum 1m). |
HIBOU_STORAGE_USAGE_INVENTORY_ENABLED |
false |
Also list the artifact backend to measure what it actually holds. On S3, each 1,000 keys is a billed LIST request. |
HIBOU_STORAGE_USAGE_INVENTORY_INTERVAL |
24h |
Minimum time between backend inventories (minimum 1h). |
HIBOU_STORAGE_USAGE_INVENTORY_MAX_OBJECTS |
1000000 |
Stop the inventory after this many objects and report it as truncated. |
Forges are configured using a zero-indexed pattern. Replace N with 0, 1, 2, etc.
| Variable |
Required |
Description |
HIBOU_FORGE_N_TYPE |
Yes |
Provider type: github, forgejo, gitea, gitlab |
HIBOU_FORGE_N_ID |
Yes |
Unique identifier for this instance |
HIBOU_FORGE_N_URL |
Forgejo/GitLab |
Base URL of the forge instance |
HIBOU_FORGE_N_CLIENT_ID |
Yes |
OAuth2 application client ID |
HIBOU_FORGE_N_CLIENT_SECRET |
Yes |
OAuth2 application client secret |
HIBOU_FORGE_N_WEBHOOK_SECRET |
Yes |
HMAC secret for webhook verification |
- Indexes start at
0 and increment by 1
- Hibou stops reading at the first missing index (gap)
- IDs must be unique across all forges
- The
URL field is required for Forgejo, Gitea, and GitLab (not required for GitHub)
| Type |
URL Required |
Notes |
github |
No |
Defaults to github.com |
forgejo |
Yes |
Latest Forgejo release only (17 at the time of writing) |
gitea |
Yes |
Uses same provider as forgejo |
gitlab |
Yes |
Latest GitLab release only |