Docketeer: A Tool for Docker

Michael (Kwon) Liu
4 min readJul 19, 2023

Co-Authors: Garrett Allen , Adrian Kormier , Shuai Shao , and John Kim
Author: Michael Liu

If you have ever deployed an application or worked collaboratively on a team, you have probably been tempted to utter the words, “but it works on my machine.” If this is relatable, then you should know about the benefits of containerization. Over the last decade, since the release of Docker in 2013, containers have exploded in popularity, becoming an industry standard in virtualization, development workflow, and microservices architecture. Although there are other players in the field of containerization technology, Docker is the clear leader.

However, with its extensive command line, Docker has a steep learning curve. In addition, Docker Desktop does not provide data visualization. In comes Docketeer, a GUI for Docker with robust visualization tools. Released by Open Source Labs in 2020, Docketeer extends the functionality of Docker Desktop, allowing developers to manage containers, images, and volumes as well as the ability to view related metrics. This is an all-in-one, easy-to-use application. Say goodbye to the terminal!

​​​So what’s new with this latest release of Docketeer? In a word, networking. In Docker, networking is essential for managing container communication, isolation and security, and overseeing a microservices architecture. Docketeer now offers full networking support while offering a convenient network-to-container graph built with D3.

NEW FEATURES

  • Networking support
    - Create and delete user-defined networks
    - Attach and detach containers to networks
    - Remove unused networks with one click
  • Visual Aids
    - Graph for seeing network-container connections at a glance
    - Networking page that shows networks and connected containers
    - Containers page that shows containers and available networks

Easy Docker Networking

In Docker, networking is essential for managing communication between containers. Up until now, however, Docketeer has not provided networking functionality. Now, it does. In addition to running images, stopping and starting containers, and getting volume logs, users now have full networking capabilities. They can create and delete networks, and manage communication between networks and containers.

​​​Full networking functionality provides crucial benefits to the developer working with Docker. Containers can easily be attached and detached from networks on the fly. This flexibility allows users to dictate the dataflow and behavior of their application. With full networking functionality, it is possible to manage a container’s connections, fitting individual microservice components into continuous integration / continuous delivery (CI/CD) pipelines. But Docketeer XIII not only expands networking functionality. It also visualizes it.

Robust Visualization

​Drawing on Grafana and Prometheus, Docketeer provides a customizable dashboard for visualizing container metrics — a feature Docket Desktop does not have. In addition to being able to evaluate key resource consumption data such as CPU usage, memory usage, and network throughput, Docketeer offers a wide range of information to aid in a developer’s decision making process.

​Docketeer XIII extends this convenient visualization to networking functionality. As container environments grow in complexity, it becomes increasingly difficult to comprehend the relationships between an application’s containers and networks. With Docketeer providing a crisp overview of network and container relationships, developers can focus on expanding the logic of their application rather than being slowed down by dealing with container and network management.

Learning Docker?

​​​​New to the DevOps scene? Trying to understand what Docker offers? Docketeer is especially useful to those just beginning their containerization and DevOps journey. It allows you to experiment with images, containers, and networks without dealing with the intricacies of the Docker command line.

BUG FIXES AND OPTIMIZATIONS

  • Reduced API call response time by 50% when retrieving network information
  • More comprehensive README, having tested the application on all major platforms
  • Smoother user experience as container and network complexity scales
  • Regular backend fetches to update state no longer cause UI to reset

What’s next?

​Please look forward to future updates of our application!

We’d love to hear your thoughts and suggestions!

Visit our website or connect with our team members on LinkedIn and github!

Thank you so much!

Docketeer: Github | LinkedIn

Michael Liu: Github | LinkedIn

Adrian Kormier: Github | LinkedIn

Garrett Allen: Github | LinkedIn

John Kim: Github | LinkedIn

Shuai Shao: Github | LinkedIn

--

--