Expected behavior
I run docker pull node:4
and the layers are downloaded as normal.
Actual behavior
The command failed with output:
efd26ecc9548: Pull complete
a3ed95caeb02: Pull complete
d1784d73276e: Pull complete
72e581645fc3: Pull complete
9709ddcc4d24: Pull complete
9df198b56120: Pull complete
82e641bf31e2: Pull complete
Digest: sha256:e10d0637c4242352de1b17b98037610d0eb24ba45569c5a5138466c022b114a0
Status: Downloaded newer image for node:4
Error response from daemon: Bad response from Docker engine
subsequent runs of docker pull node:4
are now failing with:
The command fails at the last extraction step with error:
efd26ecc9548: Already exists
a3ed95caeb02: Download complete
d1784d73276e: Already exists
72e581645fc3: Already exists
9709ddcc4d24: Already exists
9df198b56120: Already exists
82e641bf31e2: Extracting [==================================================>] 12.12 MB/12.12 MB
failed to register layer: rename /var/lib/docker/image/aufs/layerdb/tmp/layer-449695309 /var/lib/docker/image/aufs/layerdb/sha256/0b4e4581ca60a96bd440afa3815b869fdd405cc8c79fb75feabd513826d03806: directory not empty
Information
- `pinata diagnose -u` on OSX
OS X: version 10.11.4 (build: 15E65)
Docker.app: version v1.11.0-beta8.2
Running diagnostic tests:
[OK] docker-cli
[OK] Moby booted
[OK] driver.amd64-linux
[OK] vmnetd
[OK] osxfs
[OK] db
[OK] slirp
[OK] menubar
[OK] environment
[OK] Docker
[OK] VT-x
Docker logs are being collected into /tmp/20160426-115342.tar.gz
Most specific failure is: No error was detected
Your unique id is: 488A11F2-9ADC-4ECC-B7CF-7E73F3635BA1
Please quote this in all correspondence.
Additional
docker pull alpine
or docker pull ubuntu
work fine. The problem seems to be that the docker layers got into a bad state (extracted but not registered) and now there doesn’t seem to be any way to remove the layer. Is there a way to get shell access to the VM?
The workaround is to uninstall and reinstall docker for mac. After a reinstall docker pull node:4
works fine.