# Error response from daemon: invalid reference format: repository name must be lowercase

- **ID:** `docker/invalid-reference-format`
- **Domain:** docker
- **Category:** config_error
- **Verification:** ai_generated
- **Fix Rate:** 95%

## Root Cause

The image name or tag contains uppercase letters or invalid characters, which Docker does not allow for repository names.

## Version Compatibility

| Version | Status | Introduced | Deprecated |
|---------|--------|------------|------------|
| Docker 24.0.6 | active | — | — |
| Docker 25.0.3 | active | — | — |
| Docker 23.0.5 | active | — | — |

## Workarounds

1. **Rename the image to use only lowercase letters, numbers, and allowed symbols. Example: change 'MyApp:latest' to 'myapp:latest'.** (95% success)
   ```
   Rename the image to use only lowercase letters, numbers, and allowed symbols. Example: change 'MyApp:latest' to 'myapp:latest'.
   ```
2. **If using docker-compose, ensure the image field is lowercase: 'image: myapp:1.0' instead of 'image: MyApp:1.0'.** (95% success)
   ```
   If using docker-compose, ensure the image field is lowercase: 'image: myapp:1.0' instead of 'image: MyApp:1.0'.
   ```

## Dead Ends

- **** — Using quotes around the image name does not fix uppercase letters; Docker still parses them as invalid. (90% fail)
- **** — Changing the tag to uppercase does not help; the repository name itself must be lowercase. (95% fail)
