- Nirmata supports the following image registries:
- Docker Hub
- Docker Private Registry
- Amazon EC2 Container Registry (ECR)
- JFrog Artifactory
Docker Image Registries can be managed using Nirmata. By default, the Docker Hub is already created. Additional public or private registries can also be added.
Users can search the Docker Hub for images by specifying a keyword. Once an image is found, users can view the details of the image or create a new service with that image.
Docker Private Registry¶
To securely connect Nirmata with a Docker Registry in your Private Cloud of Data Center, first setup a Private Cloud.
A private registry can be added by specifying the registry URL and the credentials (optional). Once the registry is added, users can view the image repositories in that registry as well as the list of tags for each image repository. Users can also create a new service for an image, view details of a tag or compare two tags.
To securely connect Nirmata with Amazon ECR first setup an AWS Cloud Provider. When setting up the cloud provider, ensure that AmazonEC2ContainerRegistryFullAccess is selected.
Next, add the Image Registry in Nimrata. Enter the name, select Amazon ECR as the provider, enter the location and select cloud provider. Ensure that this cloud provider is using an IAM role that has policy AmazonEC2ContainerRegistryFullAccess enabled.
The registry location can found from the Amazon ECR page.
Once the repository is added, you can view the images in that registry as well as the tags for each image repository. Now you can select the tag when creating a new service for an image.
To add Artifactory in Nirmata, go to the Image Registries screen and click on the ‘Add Image Registry…’ button. In the dialog, select JFrog Artifactory as the Registry Provider. Specify the registry name. For Artifactory, the registry name should be same as the registry name displayed in the Artifactory Repository Browser. Also, specify the artifactory URL in the location field along with the username and password. If all the information is correctly specified, you should be able to see a list of all the images stored in the registry.
Create a Service from an Docker Image¶
To create a new Application, or to add a new Service to an existing Application, you can select an image listed in a registry and select the Create Service option. This will launch a wizard where you can create a new Application or select an existing Application, and then configure the service properties:
The remaining steps in the Add Service Wizard are the same as adding a Service to an existing application, and are documented at: Add a Service to an Application.
Example: Deploy Wordpress¶
Here are the steps to create a Wordpress service based on the jbfink/docker-wordpress image available on Docker index.
- Select Image Registries -> Docker Index and search for a ‘wordpress’. Several wordpress images will be displayed in the table.
- Select the ‘Create Service…’ action for the ‘jbfink/docker-word press’ image
- In the Add Service Wizard, choose to create an Application and specify a name for the new application.
- On the Networking page, disable service networking and remove the mapping for HTTPS port. Specify the HTTP host port.
- Other sections can be ignored for this example.
- Finish the wizard.
You will now see the new application in the Applications section. If you have configured a Host Group, you can also deploy the application to an environment. (See Deploy an Application to a Environment).