moby: docker pull scratch failed

Description of problem:

I cannot pull scratch docker image (pulling of other images works without problem). Error looks like so:

docker pull scratch
Pulling repository scratch
511136ea3c5a: Download complete
FATA[0004] 'scratch' is a reserved name

docker version:

Client version: 1.5.0
Client API version: 1.17
Go version (client): go1.4.1
Git commit (client): a8a31ef
OS/Arch (client): linux/amd64
Server version: 1.5.0
Server API version: 1.17
Go version (server): go1.4.1
Git commit (server): a8a31ef

docker info:

Containers: 0
Images: 3
Storage Driver: devicemapper
 Pool Name: docker-8:17-1441793-pool
 Pool Blocksize: 65.54 kB
 Backing Filesystem: extfs
 Data file: /dev/loop0
 Metadata file: /dev/loop1
 Data Space Used: 415.9 MB
 Data Space Total: 107.4 GB
 Metadata Space Used: 860.2 kB
 Metadata Space Total: 2.147 GB
 Udev Sync Supported: true
 Data loop file: /var/lib/docker/devicemapper/devicemapper/data
 Metadata loop file: /var/lib/docker/devicemapper/devicemapper/metadata
 Library Version: 1.02.93 (2015-01-30)
Execution Driver: native-0.2
Kernel Version: 3.18.6-1-ARCH
Operating System: Arch Linux
CPUs: 4
Total Memory: 3.864 GiB
Name: messenger
ID: GIJH:YU43:4SPA:TDYI:2TVH:BSRF:FKVP:GNWM:7QGD:64FH:TOCI:FGBB
Username: nerro
Registry: [https://index.docker.io/v1/]

uname -a:

Linux messenger 3.18.6-1-ARCH #1 SMP PREEMPT Sat Feb 7 08:44:05 CET 2015 x86_64 GNU/Linux

Environment details (AWS, VirtualBox, physical, etc.): Archlinux is installed on VirtualBox.

How reproducible: Fresh installation of docker 1.5.0

Steps to Reproduce:

  1. docker pull scratch with fresh installed docker and no empty images

About this issue

  • Original URL
  • State: closed
  • Created 9 years ago
  • Comments: 16 (6 by maintainers)

Commits related to this issue

Most upvoted comments

scratch is a reserved name and not a real image anymore. When you FROM scratch in a Dockerfile it no longer downloads an actual image layer (since it’s just an empty fs anyway).

Is this presenting a particular problem? Why are you trying to actually pull scratch?

@EricLanduyt if you need a “scratch” image, you can create it;

FROM scratch
VOLUME /data

docker build -t data ., which produces;

REPOSITORY   TAG     IMAGE ID            CREATED             VIRTUAL SIZE
data         latest  77f133bce7ba        21 seconds ago      0 B

And you don’t even need to define the volume;

docker create --name my-data data

I was previously creating data containers this way:

docker create --volume=/data --name data scratch ""

But now this is not working anymore. As suggested in the best practice, I can create from the same image as the application itself, but this application itself is created from a Dockerfile referencing another image (such as nodejs for example) and so on… seems a bit fuzzy to me (could I say stupid ?) because basically all my data containers are the same, and not linked to a particular image. Of course now I can create from tianon/true, but ‘scratch’ looked more clean when listing containers …

I was using this image for a data-only container. is there a new recommended image now?