The Docker platform is portable because it's written in Go, which is a cross-platform language. Go applications can be compiled to native binaries, so Docker can run on Linux or Windows without users having to install Go. On the Docker Hub the registry image contains a registry server written in Go, so you can host your own image registry by running a Docker container from that image.
registry is an official repository, but at the time of writing, it only has images available for Linux. It's likely that a Windows version of the registry will be published soon, but in this chapter I will walk you through building your own registry image, as it demonstrates some common Docker usage patterns.
Official repositories are available on Docker Hub like other public images, but they have been curated by Docker, Inc, and are maintained either by Docker...