TIL - Docker scratch image
TIL, Today I Learned, is more of a "I just figured this out: here are my notes, you may find them useful too" rather than a full blog post
The scratch image is the smallest possible image for docker. It does not contain any libraries nor other executables. It is simply a new, fresh and empty setup of namespaces.
The FROM scratch line is even a no-op [1] in the Dockerfile, which results in that it will not create an extra layer in you image. Example of a Dockerfile:
FROM scratch ADD hello / CMD ["/hello"]
As the Docker image does not contains any libraries, the hello application in the example above has to be compiled statically.
One use I see is to setup a Docker image based on a completely custom made root filesystem, e.g. the output from Buildroot.
See Docker documentation [2] for further reading.