Overview of GUI interfaces for managing Docker containers

Overview of GUI interfaces for managing Docker containers

Working with Docker in the console is a familiar routine for many. However, there are times when a GUI/web interface can be useful even for them. This article provides an overview of the most notable solutions to date, the authors of which have tried to offer more convenient (or suitable for some cases) interfaces for getting to know Docker or even maintaining large installations of it. Some of the projects are very young, while others, on the contrary, are already dying off ...

carrier

  • Site; GitHub; grid.
  • License: Open Source (zlib License and others).
  • OS: Linux, Mac OS X, Windows.
  • Languages/platform: Go, JavaScript (Angular).
  • Demo Version (admin/tryporter).

Overview of GUI interfaces for managing Docker containers

Portainer (formerly known as UI for Docker) is the most popular web interface for working with Docker hosts and Docker Swarm clusters. It is launched very simply - by deploying a Docker image, which is passed the address / socket of the Docker host as a parameter. Allows you to manage containers, images (can take them from Docker Hub), networks, volumes, secrets. Supports Docker 1.10+ (and Docker Swarm 1.2.3+). When viewing containers, basic statistics (resource usage, processes), logs, connection to the console (xterm.js web terminal) are available for each of them. There are own access lists that allow you to restrict Portainer users' rights to various operations in the interface.

Kitematic (Docker Toolbox)

Overview of GUI interfaces for managing Docker containers

A standard GUI for Docker users on Mac OS X and Windows, which is included in the Docker Toolbox, an installer for a set of utilities that also includes the Docker Engine, Compose, and Machine. It has a minimal set of functions that provide downloading images from Docker Hub, managing basic container settings (including volumes, networks), viewing logs and connecting to the console.

Shipyard

  • Site; GitHub.
  • License: Open Source (Apache License 2.0).
  • OS: Linux, Mac OS X.
  • Languages/platform: Go, Node.js.

Overview of GUI interfaces for managing Docker containers

Shipyard is not just an interface, but a Docker resource management system based on its own API. The API in Shipyard is RESTful based on the JSON format, 100% compatible with the Docker Remote API, offers additional features (in particular, authentication and access list management, logging of all operations performed). This API is the base around which the web interface is already built. To store service information that is not directly related to containers and images, Shipyard uses RethinkDB. The web interface allows you to manage containers (including viewing statistics and logs, connecting to the console), images, Docker Swarm cluster nodes, private registries (Registries).

Admiral

  • Site; GitHub.
  • License: Open Source (Apache License 2.0).
  • OS: Linux, Mac OS X, Windows.
  • Languages/platform: Java (VMware Xenon framework).

Overview of GUI interfaces for managing Docker containers

A platform from VMware designed for automated deployment and management of containerized applications throughout their life cycle. Positioned as a lightweight solution designed to make life easier for DevOps engineers. The web interface allows you to manage Docker hosts, containers (+ viewing statistics and logs), templates (images integrated with Docker Hub), networks, registries, policies (which hosts will be used by which containers and how to allocate resources). Able to check the status of containers (health checks). Distributed and deployed as a Docker image. Works with Docker 1.12+. (See also introduction to the program in VMware blog with lots of screenshots.)

DockStation

  • Site; GitHub (without source code).
  • License: proprietary (freeware).
  • OS: Linux, Mac OS X, Windows.
  • Languages/platform: Electron (Chromium, Node.js).

Overview of GUI interfaces for managing Docker containers

DockStation is a young project, created Belarusian programmers (which, by the way, looking for investors for further development). The two main features are a focus on developers (not DevOps engineers or sysadmins) with full support for Docker Compose and closed code (free to use, and for money, the authors offer personal support and refinement of features). Allows you to not only manage images (supported by Docker Hub) and containers (+ statistics and logs), but also start projects with visualization of container links involved in the project. There is also a parser (in beta) that allows you to convert commands docker run to Docker Compose format. Works with Docker 1.10.0+ (Linux) and 1.12.0 (Mac + Windows), Docker Compose 1.6.0+.

Simple Docker UI

  • GitHub.
  • License: Open Source (MIT License).
  • OS: Linux, Mac OS X, Windows.
  • Languages/platform: Electron, Scala.js (+ React on Scala.js).

Overview of GUI interfaces for managing Docker containers

A simple interface for working with Docker using the Docker Remote API. Allows you to manage containers and images (with Docker Hub support), connect to the console, view event history. It has mechanisms for removing unused containers and images. The project is in beta and is developing very slowly (actual activity, judging by the commits, subsided in February of this year).

Other options

Not included in the review:

  • Rancher is a container management platform with orchestration features and Kubernetes support. Open Source (Apache License 2.0); works in Linux; written in Java. Has a web interface Rancher UI on Node.js.
  • Kontena - "a developer-friendly platform for running containers in production", essentially competing with Kubernetes, but positioned as a more ready-made "out of the box" and easy-to-use solution. In addition to CLI and REST API, the project offers a web interface (screenshot) to manage the cluster and its orchestration (including working with cluster nodes, services, volumes, secrets), viewing statistics/logs. Open Source (Apache License 2.0); works in Linux, Mac OS X, Windows; written in Ruby.
  • data pulley - a simple utility that has a minimum of functions and documentation. Open Source (MIT License); works in linux (only package available for Ubuntu); written in Python. Supports Docker Hub for images, viewing logs for containers.
  • panamax - a project that aimed to "make deployment of complex containerized applications as simple as drag-n-drop". To do this, I created my own directory of templates for deploying applications (Panamax Public Templates), the results of which are shown when searching for images / applications along with data from Docker Hub. Open Source (Apache License 2.0); works in Linux, Mac OS X, Windows; written in Ruby. Integrated with CoreOS and Fleet orchestration system. Judging by the activity visible on the Internet, it ceased to be supported in 2015.
  • Dockly β€” cantilevered GUI 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 at 3,4 MB!Overview of GUI interfaces for managing Docker containers

PS

Read also on our blog:

Source: habr.com

Add a comment