GoogleContainerTools/skaffold · error
retrieving image config for %q: %w
Error message
retrieving image config for %q: %w
What it means
Fires in RetrieveImageConfiguration when fetching the container/image configuration for the named artifact fails — after the docker client is obtained, the lookup against the local daemon (and possibly remote registry) errored. Wraps the underlying registry/daemon retrieval error.
Source
Thrown at pkg/skaffold/debug/apply_transforms.go:69
return nil
}
// RetrieveImageConfiguration retrieves the image container configuration for
// the given build artifact
func RetrieveImageConfiguration(ctx context.Context, artifact *graph.Artifact, insecureRegistries map[string]bool) (ImageConfiguration, error) {
// TODO: use the proper RunContext
apiClient, err := docker.NewAPIClient(ctx, &runcontext.RunContext{
InsecureRegistries: insecureRegistries,
})
if err != nil {
return ImageConfiguration{}, fmt.Errorf("could not connect to local docker daemon: %w", err)
}
// the apiClient will go to the remote registry if local docker daemon is not available
manifest, err := apiClient.ConfigFile(ctx, artifact.Tag)
if err != nil {
log.Entry(ctx).Debugf("Error retrieving image manifest for %v: %v", artifact.Tag, err)
return ImageConfiguration{}, fmt.Errorf("retrieving image config for %q: %w", artifact.Tag, err)
}
config := manifest.Config
log.Entry(ctx).Debugf("Retrieved local image configuration for %v: %v", artifact.Tag, config)
// need to duplicate slices as apiClient caches requests
return ImageConfiguration{
Artifact: artifact.ImageName,
RuntimeType: types.ToRuntime(artifact.RuntimeType),
Author: manifest.Author,
Env: envAsMap(config.Env),
Entrypoint: dupArray(config.Entrypoint),
Arguments: dupArray(config.Cmd),
Labels: dupMap(config.Labels),
WorkingDir: config.WorkingDir,
}, nil
}
// envAsMap turns an array of environment "NAME=value" strings into a mapView on GitHub (pinned to a1189de023)
Solutions
- Verify the image exists: `docker images` or check the remote registry
- Check registry authentication (docker login) if the image lives in a private registry
- If a proxy/firewall blocks registry access, configure it or pull the image locally first
Defensive patterns
Strategy: try-catch
When it happens
Trigger: Thrown at pkg/skaffold/debug/apply_transforms.go:69 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of GoogleContainerTools/skaffold@a1189de023 (2026-09-05).
Data as JSON: /api/errors/666987ab21d3bbc7.
Report an issue: GitHub.