What This Error Means
Docker rejected the image reference because repository names must be lowercase, so uppercase letters or malformed syntax made it invalid.
How to Fix It
Print the final image reference string before running Docker so you can see the exact mixed-case value.
Convert the repository path to lowercase (for example MyOrg/API:latest -> myorg/api:latest).
If a script builds the reference from variables, normalize those variables before concatenating them.
Retry the original docker pull, docker run, or docker build -t command with the lowercase reference.
Why It Happens
One or more repository path segments contain uppercase letters.
An environment variable expanded into a mixed-case image name at runtime.
The command copied an image reference from documentation or CI variables without normalizing it.
How to Verify
Run the corrected command and confirm Docker accepts the image reference.
If the value comes from CI variables, print the resolved value in CI and confirm it is lowercase there too.
Manual reference checks
Echo the final reference string from the shell or CI logs.
Check each repository segment for uppercase letters before the optional :tag or @sha256:... suffix.
Examples
Invalid: MyOrg/API:latest
Invalid: ghcr.io/Acme/backend:1.4.2
Valid: myorg/api:latest
Valid: ghcr.io/acme/backend:1.4.2 How Docker parses image references
Docker parses image references locally before it makes any registry request.
Repository names are restricted to lowercase syntax, so mixed-case references fail immediately.
Prevention Tips
Keep registry namespaces and repository names lowercase across repos, env vars, and CI templates.
Validate generated image references in scripts before calling Docker.