Docker Container Management UI Design

Introduction

Docker is a technology that puts an application and all its dependencies in a container that can be “plugged in” wherever required in the cloud for rapid deployment and scaling.

In the first quarter of 2016, RightScale migrated to using Docker for their services.

Project Brief

I was tasked with designing a UI to monitor docker related infrastructure in RightScale. The project MVP was an interface for internal use, that would later be used in usability testing to understand how users will use the feature.

Basic requirements were:

  • Has to be built ASAP to help our engineers with their docker related development
  • Provide visiblity of container metadata
  • What container is deployed from which image?
  • What server / array instances are running containers from an image?
  • Be agnostic to the kind of container technology being used
  • Document different userflows expected to be observed with users

Design

Design started with research about existing docker and container visualization tools. I quickly realized that there is very little out there to meet the exact needs of visualizing docker container deployments across a hybrid cloud infrastructure environments.

Feedback

Feedback from DevOps, Engineers, and Product managers drove the design and iteration cycles. I was able to balance the needs of different workflows I discovered.
Feedback was gathered using guirella testing methods. They were informal and allowed my co-workers to talk at length about their understanding of docker technology and

Final Design

The final design that was implemented was an MVP that balanced the comprehensive experience that I designed, and the immediate needs of the company. It had the following features

  • Immediate visibility of which containers are running, from which image and tag.
  • Direct links to the exact cloud object that the container lives on.
  • Intelligent grouping of containers instantiated from the same image.
  • Visibility of container deployments from various cloud object constructs within RightScale Cloud Management.
  • Reusable UI that can be easily placed anywhere in our products as required, or presented as it’s own app. This decision will be made in the future, after vetting the design with customers.

Conclusion

The Container UI was designed, validated with internal users, developed and deployed to our product in three weeks – a testament to the agile workflow and rapid iteration based design process I practice.