How-tos

Hybrid Deployment of Docker Containers using IBM UrbanCode Deploy

Share this post:

Docker containers have rapidly been gaining adoption based on the positive developer experience, ease of deployment and the portability of the images. Docker containers are easy to build, move and deploy locally, on traditional systems and in a growing number of Cloud Providers.

Many companies are looking at Docker as a means to quickly develop their cloud centric applications or micro-services. Cloud Providers provide a fast environment on which to iterate on these applications. In scenarios where these Containers represent a micro-service, or component of a broader application deployment, we want to tie Docker Deployments into a broader workflow manager. This is especially true when looking at Hybrid Cloud scenarios where certain components are developed on the cloud but are then deployed on-premise or vise versa.

Within the IBM DevOps portfolio IBM UrbanCode Deploy (UCD) orchestrates the deployment of applications across environments. UCD provides an application centric view of the world, and allows an application deployment to co-ordinate the deployment of many individual components with inventory tracking.

IBM UrbanCode Deploy has added support for Docker Containers, Docker Registries, and IBM Container Service on Bluemix via a Community Plugin.

Scenarios where IBM Urbancode Deploy complements Docker technology

  • A deployment engineer wishes to co-ordinate the deployment of many Docker containers across a set of Docker Hosts or a Cloud Provider
  • A deployment engineer wishes to co-ordinate the deployment of a set of Docker containers as a part of a larger traditional application deployment process. This is particularly useful when converting a large application into a set of micro-services.
  • An operations engineer needs a set of validation, certification or test processes around what images are deployable within an environment.
  • An operations engineer needs to automate image management between Cloud Registries and on-premise Docker Registries.

Demonstration
In the attached video, I show how you can use IBM UrbanCode Deploy with the Docker plugins to deploy a Docker image from the IBM Container Service on Bluemix:

  • Into a running container on-premise
  • Into a running container on the Bluemix cloud platform
  • Into a Docker Hub Enterprise registry behind your company’s firewall.

All of these deployments can also be done with a Docker Registry as the source.

Getting Started
The best source of information to get started is the project’s README.md.

More stories
May 1, 2019

Two Tutorials: Plan, Create, and Update Deployment Environments with Terraform

Multiple environments are pretty common in a project when building a solution. They support the different phases of the development cycle and the slight differences between the environments, like capacity, networking, credentials, and log verbosity. These two tutorials will show you how to manage the environments with Terraform.

Continue reading

April 29, 2019

Transforming Customer Experiences with AI Services (Part 1)

This is an experience from a recent customer engagement on transcribing customer conversations using IBM Watson AI services.

Continue reading

April 26, 2019

Analyze Logs and Monitor the Health of a Kubernetes Application with LogDNA and Sysdig

This post is an excerpt from a tutorial that shows how the IBM Log Analysis with LogDNA service can be used to configure and access logs of a Kubernetes application that is deployed on IBM Cloud.

Continue reading