Skip to content

Docker image pull error #1104

@diyadalal15

Description

@diyadalal15

Description
Docker Desktop consistently fails to pull images from Docker Hub with a "short read: expected X bytes but got Y: unexpected EOF" error. This occurs across multiple image pulls and persists after attempting all standard troubleshooting steps.

Steps to reproduce

  1. Run docker compose build or docker pull python:3.12-slim-bookworm
  2. Docker attempts to pull image metadata from Docker Hub
  3. Connection is interrupted mid-download
  4. Error: "short read: expected 5711 bytes but got 4588: unexpected EOF"

Expected behavior
Docker should successfully pull images from Docker Hub, even when behind a corporate proxy. The connection should handle network interruptions gracefully and retry automatically.

Actual behavior
Docker consistently fails to pull images with a "short read" error, indicating the connection is being interrupted or corrupted during the metadata download phase.

Environment

  • OS: macOS 25.1.0 (Darwin)
  • Docker Desktop Version: 29.1.3
  • Docker Compose Version: 5.0.0-desktop.1
  • Buildx Version: 0.30.1-desktop.1
  • Network: Corporate network behind Zscaler proxy (auto-configured via PAC file)

Error Message

failed to solve: python:3.12-slim-bookworm: failed to resolve source metadata for docker.io/library/python:3.12-slim-bookworm: short read: expected 5711 bytes but got 4588: unexpected EOF

Troubleshooting Steps Attempted

Network/Proxy Configuration

  • Configured Docker Desktop proxy settings (Manual and System proxy)
  • Verified Zscaler local proxy at 127.0.0.1:9000
  • Set HTTP_PROXY and HTTPS_PROXY environment variables
  • Added proxy build arguments to docker-compose.yml
  • Verified network connectivity (internet works fine)
  • Tested with different proxy configurations

Docker Desktop Restart/Reset

  • Quit and restarted Docker Desktop multiple times
  • Performed full Docker Desktop reset (factory defaults)
  • Cleared all Docker caches (docker system prune -af)
  • Cleared build cache (docker builder prune -af)
  • Removed corrupted socket files

Storage/Corruption Fixes

  • Cleared Docker storage corruption
  • Removed corrupted image layers
  • Verified disk space (293GB available)
  • Checked Docker daemon logs for additional errors

Alternative Approaches

  • Tried pulling different images (same error)
  • Attempted with different base images
  • Tested with docker pull hello-world (same error pattern)
  • Verified Docker Hub connectivity from browser (works fine)

System Checks

  • Verified Docker Desktop is running and responsive
  • Confirmed Docker daemon is healthy (docker info works)
  • Checked system proxy settings (auto-configured via PAC)
  • Verified Zscaler client is running and connected

Additional Context

Network Environment:

  • Corporate network with Zscaler proxy
  • Auto-proxy configuration via PAC file: http://127.0.0.1:9000/localproxy-*.pac
  • System proxy shows: Auto Proxy URL enabled
  • Direct proxy settings: Not manually configured (Zscaler handles automatically)

Error Pattern:

  • Expected bytes: ~5700-5800 range
  • Actual bytes received: ~4500-4600 range
  • Always ~1000-1200 bytes short
  • Occurs during metadata resolution phase (not during layer download)
  • 100% reproducible failure rate

Questions:

  1. Is this a known issue with Docker Desktop 29.1.3 and corporate proxies?
  2. Are there specific proxy configurations required for Zscaler?
  3. Should Docker handle network interruptions more gracefully with automatic retries?
  4. Is there a way to increase timeout/retry settings for image pulls?
  5. Could this be related to the content-addressable storage system?

Note: This issue is blocking all Docker operations that require pulling images from Docker Hub. All standard troubleshooting steps have been exhausted without resolution.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions