The Docker ecosystem is made up of the container runtime environment along with tools to define and build application containers and to manage the interactions between the runtime environment and the host operating system. There are two Docker runtime environments:
The community edition is used for this reference architecture. Most organizations have licensed and non-licensed docker runtimes and should implement safeguards to ensure that the correct version is deployed in environments where the support is critical.
A Docker registry is a supporting technology that is used for storing, managing, and delivering Docker images from a central repository. Registries can be public or private and can be hosted in a public cloud or locally inside the data centre. Docker users can install a local registry by downloading a compressed image from the Docker hub that contains all the necessary container components that are specific to the guest operating system and application. Private registry can reside inside the data centre. For this reference architecture, a private registry is implemented on one of the nodes for fast provisioning of the SQL pods in the cluster.
Using a private registry gives the advantage of easily securing the customized image for private setup. When the image is downloaded, you can easily accommodate the changes and can deploy securely in its private environment. You can download a base container image from the public Microsoft Docker registry and customize it to optimize the database performance. The customized image is deployed on all the other pods in the cluster.