Using the Docker registry

The Docker Hub provides a central location to store all the Docker images. The images can be stored as public as well as private. In many cases, organizations deploy their own private registries on premises due to security-related concerns.

Perform the following steps to set up and run a local registry:

  1. The following command will start a registry, which will bind the registry on port 5000:
    docker run -d -p 5000:5000 --restart=always --name registry registry:2
    
  2. Tag search:1.0 to the registry, as follows:
    docker tag search:1.0 localhost:5000/search:1.0
    
  3. Then, push the image to the registry via the following command:
    docker push localhost:5000/search:1.0
    
  4. Pull the image back from the registry, as follows:
    docker pull localhost:5000/search:1.0
    

Setting up the Docker Hub

In the previous chapter, we played with a local Docker registry. This section will show how to set up and use the Docker Hub to publish the Docker containers. This is a convenient mechanism to globally access Docker images. Later in this chapter, Docker images will be published to the Docker Hub from the local machine and downloaded from the EC2 instances.

In order to do this, create a public Docker Hub account and a repository. For Mac, follow the steps as per the following URL: https://docs.docker.com/mac/step_five/.

In this example, the Docker Hub account is created using the brownfield username.

The registry, in this case, acts as the microservices repository in which all the dockerized microservices will be stored and accessed. This is one of the capabilities explained in the microservices capability model.

Publishing microservices to the Docker Hub

In order to push dockerized services to the Docker Hub, follow these steps. The first command tags the Docker image, and the second one pushes the Docker image to the Docker Hub repository:

docker tag search:1.0brownfield/search:1.0
docker push brownfield/search:1.0

To verify whether the container images are published, go to the Docker Hub repository at https://hub.docker.com/u/brownfield.

Repeat this step for all the other BrownField microservices as well. At the end of this step, all the services will be published to the Docker Hub.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.216.143.65