Skip to content

Environment Variables

Variable Default Description
IMGLIFE_CONFIG imglife.yaml Path to the configuration file
Variable Default Description
IMGLIFE_LOG_FORMAT json Log format: json or text
IMGLIFE_LOGLEVEL warn Log level: debug, info, warn, error
Variable Default Description
IMGLIFE_SYNC_PARALLELISM 4 Number of concurrent sync operations
Variable Default Description
IMGLIFE_RETRY_ATTEMPTS 3 Number of retry attempts per operation
IMGLIFE_RETRY_INITIAL_DELAY 2s Initial backoff delay
IMGLIFE_RETRY_BACKOFF 2 Backoff multiplier (exponential)
IMGLIFE_RETRY_TIMEOUT 60s Timeout per individual registry operation
IMGLIFE_IMAGE_TIMEOUT 5m Timeout per image operation (sync/build/push)
Variable Default Description
IMGLIFE_ALERT_CRITICAL_DAYS 30 Warn when EOL is within this many days
Variable Description
GITLAB_TOKEN GitLab Personal Access Token
GITEA_TOKEN Gitea access token
AWS_ACCESS_KEY_ID S3 access key
AWS_SECRET_ACCESS_KEY S3 secret key

Credentials follow the naming convention IMGLIFE_<NORM>_<TYPE> where <NORM> is the normalised hostname (uppercase, non-alphanumeric → _).

Variable pattern Description
IMGLIFE_<NORM>_USERNAME Username for the registry
IMGLIFE_<NORM>_PASSWORD Password for the registry
IMGLIFE_<NORM>_TOKEN Bearer token (used as password with token username)
Hostname Variable Example
docker.io IMGLIFE_DOCKER_IO_USERNAME / IMGLIFE_DOCKER_IO_PASSWORD Docker Hub credentials
quay.io IMGLIFE_QUAY_IO_TOKEN Quay.io robot token
ghcr.io IMGLIFE_GHCR_IO_TOKEN GitHub PAT
registry.example.com IMGLIFE_REGISTRY_EXAMPLE_COM_USERNAME / _PASSWORD Custom registry
registry:5000 IMGLIFE_REGISTRY_5000_USERNAME / _PASSWORD Local registry

If no IMGLIFE_* variable is found for a host, imglife falls back to ~/.docker/config.json.

Terminal window
# Enable readable logs in CI
export IMGLIFE_LOG_FORMAT=text
export IMGLIFE_LOGLEVEL=info
# Increase parallelism for large sync jobs
export IMGLIFE_SYNC_PARALLELISM=8
# Extend timeouts for slow networks
export IMGLIFE_IMAGE_TIMEOUT=10m
export IMGLIFE_RETRY_TIMEOUT=120s