The Docker Cloud is a service provided by Docker in which you can carry out the following operations −
Nodes − You can connect the Docker Cloud to your existing cloud providers such as Azure and AWS to spin up containers on these environments.
Cloud Repository − Provides a place where you can store your own repositories.
Continuous Integration − Connect with Github and build a continuous integration pipeline.
Application Deployment − Deploy and scale infrastructure and containers.
Continuous Deployment − Can automate deployments.
You can go to the following link to getting started with Docker Cloud − https://cloud.docker.com/
Once logged in, you will be provided with the following basic interface −
The first step is to connect to an existing cloud provider. The following steps will show you how to connect with an Amazon Cloud provider.
Step 1 − The first step is to ensure that you have the right AWS keys. This can be taken from the aws console. Log into your aws account using the following link − https://aws.amazon.com/console/
Step 2 − Once logged in, go to the Security Credentials section. Make a note of the access keys which will be used from Docker Hub.
Step 3 − Next, you need to create a policy in aws that will allow Docker to view EC2 instances. Go to the profiles section in aws. Click the Create Policy button.
Step 4 − Click on ‘Create Your Own Policy’ and give the policy name as dockercloudpolicy and the policy definition as shown below.
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "ec2:*", "iam:ListInstanceProfiles" ], "Effect": "Allow", "Resource": "*" } ] }
Next, click the Create Policy button
Step 5 − Next, you need to create a role which will be used by Docker to spin up nodes on AWS. For this, go to the Roles section in AWS and click the Create New Role option.
Step 6 − Give the name for the role as dockercloud-role.
Step 7 − On the next screen, go to ‘Role for Cross Account Access’ and select “Provide access between your account and a 3rd party AWS account".
Step 8 − On the next screen, enter the following details −
Step 9 − Then, click the Next Step button and on the next screen, attach the policy which was created in the earlier step.
Step 10 − Finally, on the last screen when the role is created, make sure to copy the arn role which is created.
arn:aws:iam::085363624145:role/dockercloud-role
Step 11 − Now go back to Docker Cloud, select Cloud Providers, and click the plug symbol next to Amazon Web Services.
Enter the arn role and click the Save button.
Once saved, the integration with AWS would be complete.
Once the integration with AWS is complete, the next step is to setup a node. Go to the Nodes section in Docker Cloud. Note that the setting up of nodes will automatically setup a node cluster first.
Step 1 − Go to the Nodes section in Docker Cloud.
Step 2 − Next, you can give the details of the nodes which will be setup in AWS.
You can then click the Launch Node cluster which will be present at the bottom of the screen. Once the node is deployed, you will get the notification in the Node Cluster screen.
The next step after deploying a node is to deploy a service. To do this, we need to perform the following steps.
Step 1 − Go to the Services Section in Docker Cloud. Click the Create button
Step 2 − Choose the Service which is required. In our case, let’s choose mongo.
Step 3 − On the next screen, choose the Create & Deploy option. This will start deploying the Mongo container on your node cluster.
Once deployed, you will be able to see the container in a running state.