| 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.
# 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