Configuration reference
Complete reference for configuring Infrahub Backup through environment variables and runtime flags.
Configuration methods​
Tools can be configured through these methods, applied in precedence order:
- Command-line flags (highest priority)
- Environment variables
- Default values (lowest priority)
Environment variables​
Core configuration​
| Variable | Description | Default | Example |
|---|---|---|---|
INFRAHUB_BACKUP_DIR | Directory for storing backup files | ./infrahub_backups | /data/backups |
INFRAHUB_LOG_FORMAT | Output format for logs | text | json |
Docker compose configuration​
| Variable | Description | Default | Example |
|---|---|---|---|
INFRAHUB_PROJECT | Docker Compose project name | Auto-detect | infrahub-prod |
Database configuration​
Neo4j​
| Variable | Description | Default | Example |
|---|---|---|---|
INFRAHUB_DB_DATABASE | Neo4j database name | neo4j | infrahub |
INFRAHUB_DB_USERNAME | Neo4j username | neo4j | admin |
INFRAHUB_DB_PASSWORD | Neo4j password | admin | SecurePass123 |
Task manager PostgreSQL​
| Variable | Description | Default | Example |
|---|---|---|---|
PREFECT_API_DATABASE_CONNECTION_URL | PostgreSQL connection string | Auto-detect | postgresql://user:pass@localhost/prefect |
Command-line flag reference​
Global flags​
| Flag | Environment Override | Description |
|---|---|---|
--backup-dir | INFRAHUB_BACKUP_DIR | Set backup directory |
--project | INFRAHUB_PROJECT | Target specific Docker Compose project |
--log-format | INFRAHUB_LOG_FORMAT | Set log output format |
Backup command flags​
| Flag | Description |
|---|---|
--force | Force backup creation even if tasks are running |
--neo4jmetadata | Neo4j metadata to include (all, none, users, roles) |
Auto-detection behavior​
Docker Compose project detection​
Order of detection:
--projectflagINFRAHUB_PROJECTenvironment variable- Search for running Infrahub containers
Detection command:
docker compose ls --filter "name=*infrahub*"
Database credential detection​
For Docker Compose deployments:
# Neo4j credentials from environment
docker compose exec database printenv NEO4J_AUTH
# PostgreSQL credentials from environment
docker compose exec task-manager-db printenv POSTGRES_PASSWORD