
Working with Docker in the console is a familiar routine for many. However, there are instances when a GUI/web interface can prove beneficial even for them. This article presents an overview of the most notable solutions available today, where the authors have attempted to offer more user-friendly (or suitable for specific cases) interfaces for getting acquainted with Docker or even maintaining large installations. Some of the projects are quite young, while others are already fading away...
Portainer
- ; ; .
- License: Open Source (zlib License and others).
- OS: Linux, Mac OS X, Windows.
- Languages/platform: Go, JavaScript (Angular).
- (admin / tryportainer).

Portainer (formerly known as UI for Docker) is the most popular web interface for working with Docker hosts and Docker Swarm clusters. It is straightforward to deploy — simply by deploying a Docker image with the Docker host address/socket passed as a parameter. It allows you to manage containers, images (capable of pulling them from Docker Hub), networks, volumes, and secrets. It supports Docker 1.10+ (and Docker Swarm 1.2.3+). When viewing containers, basic statistics (resource usage, processes), logs, and console connection (web terminal xterm.js) are available for each. It has its own access lists that allow restricting Portainer users' rights to various operations in the interface.
Kitematic (Docker Toolbox)
- (+ ); ; .
- License: Open Source (Apache License 2.0).
- OS: Mac OS X, Windows.
- Languages/platform: Electron, Node.js, React, and AltJS.

The standard GUI for Docker users on Mac OS X and Windows, which is part of Docker Toolbox — an installer for a set of utilities that also includes Docker Engine, Compose, and Machine. It has a minimal set of features that provide image downloading from Docker Hub, management of basic container settings (including volumes, networks), log viewing, and console connection.
Shipyard
- ; .
- License: Open Source (Apache License 2.0).
- OS: Linux, Mac OS X.
- Languages/platform: Go, Node.js.

Shipyard is not just an interface, but a resource management system for Docker, built around its own API. The API in Shipyard is RESTful based on the JSON format, fully compatible with the Docker Remote API, offering additional capabilities such as authentication, access control management, and logging of all executed operations. This API is the foundation around which the web interface is constructed. For storing operational information not directly related to containers and images, Shipyard uses RethinkDB. The web interface allows managing containers (including viewing statistics and logs, and connecting to the console), images, Docker Swarm cluster nodes, and private registries.
Admiral
- ; .
- License: Open Source (Apache License 2.0).
- OS: Linux, Mac OS X, Windows.
- Languages/platform: Java (VMware Xenon framework).

A platform from VMware designed for automated deployment and management of containerized applications throughout their lifecycle. Marketed as a lightweight solution aimed at simplifying the lives of DevOps engineers. The web interface allows management of Docker hosts, containers (including viewing statistics and logs), templates (images integrated with Docker Hub), networks, registries, and policies (which hosts will use which containers and how to allocate resources). It can check the status of containers (health checks). Distributed and deployed as a Docker image. Works with Docker 1.12+. (See also an introduction to the program in with a lot of screenshots.)
DockStation
- ; (without source code).
- License: proprietary (freeware).
- OS: Linux, Mac OS X, Windows.
- Languages/platform: Electron (Chromium, Node.js).

DockStation is a young project, by Belarusian programmers (who, by the way, for its further development). The two main features are its focus on developers (not on DevOps engineers or system administrators) with full support for Docker Compose and the closed nature of the code (free to use, and the authors offer personalized support and enhancements for a fee). It allows not only managing images (with Docker Hub support) and containers (including statistics and logs), but also creating projects visualizing the relationships of containers involved in the project. Additionally, there is a parser (currently in beta) that allows converting commands. docker run in Docker Compose format. Works with Docker 1.10.0+ (Linux) and 1.12.0 (Mac + Windows), Docker Compose 1.6.0+.
Simple Docker UI
- .
- License: Open Source (MIT License).
- OS: Linux, Mac OS X, Windows.
- Languages/platform: Electron, Scala.js (+ React on Scala.js).

A simple interface for working with Docker, using the Docker Remote API. Allows managing containers and images (with support for Docker Hub), connecting to the console, and viewing event history. Features mechanisms for removing unused containers and images. The project is in beta and evolves very slowly (actual activity, based on commits, has slowed down since February this year).
Other options
Not covered in the review:
- — a container management platform that features orchestration capabilities and supports Kubernetes. Open Source (Apache License 2.0); works in Linux; written in Java. Has a web interface. on Node.js.
- — a ‘developer-friendly platform for running containers in production’, effectively competing with Kubernetes but marketed as a more ready-to-use, simpler solution. In addition to CLI and REST API, the project offers a web interface () for managing the cluster and its orchestration (including working with cluster nodes, services, volumes, secrets), and viewing statistics/logs. Open Source (Apache License 2.0); works in Linux, Mac OS X, Windows; written in Ruby.
- — a simple utility with minimal features and documentation. Open Source (MIT License); works in Linux (only the package for Ubuntu is available); written in Python. Supports Docker Hub for images, log viewing for containers.
- — a project aimed at ‘making the deployment of complex containerized applications as simple as drag-and-drop’. For this purpose, a custom template catalog for app deployment was created (), results from which are displayed when searching for images/applications alongside data from Docker Hub. Open Source (Apache License 2.0); works in Linux, Mac OS X, Windows; written in Ruby. Integrated with CoreOS and the Fleet orchestration system. Judging by the visible activity online, it ceased to be supported in 2015.
- — console a graphical interface for managing Docker containers and images. Open Source (MIT License); written in JavaScript/Node.js.
Finally: what does the GUI look like in Dockly? Caution: GIF of 3.4 MB!
P.S.
Also read in our blog:
- «».
- «».
- «».
Source: habr.com
