Огляд інтерфейсів GUI для управління Docker-контейнерами

Огляд інтерфейсів GUI для управління Docker-контейнерами

Робота з Docker в консолі – звична для багатьох рутина. Тим не менш, трапляються випадки, коли GUI-/веб-інтерфейс може виявитися корисним навіть для них. У статті представлено огляд найпомітніших на сьогоднішній день рішень, автори яких спробували запропонувати зручніші (або придатні для якихось випадків) інтерфейси для знайомства з Docker або навіть обслуговування великих його інсталяцій. Деякі з проектів зовсім молоді, інші — навпаки, вже відмирають…

Портейнер

Огляд інтерфейсів GUI для управління Docker-контейнерами

Portainer (раніше відомий як UI for Docker) - найпопулярніший веб-інтерфейс для роботи з Docker-хостами та кластерами Docker Swarm. Запускається дуже просто - розгортанням Docker-образу, якому як параметр передається адреса/сокет Docker-хоста. Дозволяє керувати контейнерами, образами (уміє забирати їх із Docker Hub), мережами, томами, секретами. Підтримує Docker 1.10+ (та Docker Swarm 1.2.3+). Під час перегляду контейнерів для кожного доступна базова статистика (використання ресурсів, процеси), логи, підключення до консолі (веб-термінал xterm.js). Існують свої списки доступів, що дозволяють обмежувати користувачам Portainer права на різні операції в інтерфейсі.

Kitematic (Docker Toolbox)

Огляд інтерфейсів GUI для управління Docker-контейнерами

Стандартний GUI для користувачів Docker в Mac OS X і Windows, який увійшов до складу Docker Toolbox - інсталятора набору утиліт, що включають також Docker Engine, Compose і Machine. Має мінімальний набір функцій, що забезпечують завантаження образів з Docker Hub, керування базовими налаштуваннями контейнерів (включаючи томи, мережі), перегляд логів та підключення до консолі.

Суднобудівний завод

  • Сайт; GitHub.
  • Ліцензія: Open Source (Apache License 2.0).
  • ОС: Linux, Mac OS X.
  • Мови/платформа: Go, Node.js.

Огляд інтерфейсів GUI для управління Docker-контейнерами

Shipyard це не просто інтерфейс, а система управління ресурсами Docker, в основу якої закладено наявність свого API. API в Shipyard - RESTful на базі формату JSON, сумісний на 100% з Docker Remote API, пропонує додаткові можливості (зокрема - автентифікацію та керування списками доступу, логування всіх операцій). Цей API і є базою, навколо якої вже побудований веб-інтерфейс. Для зберігання службової інформації, що не відноситься безпосередньо до контейнерів і образів, Shipyard використовується RethinkDB. Веб-інтерфейс дозволяє керувати контейнерами (включаючи перегляд статистики та логів, підключення до консолі), образами, вузлами кластера Docker Swarm, приватними реєстрами (Registries).

Адмірал

  • Сайт; GitHub.
  • Ліцензія: Open Source (Apache License 2.0).
  • ОС: Linux, Mac OS X, Windows.
  • Мови/платформа: Java (фреймворк VMware Xenon).

Огляд інтерфейсів GUI для управління Docker-контейнерами

Платформа від VMware, призначена для автоматизованого деплою контейнеризованих додатків та керування ними протягом життєвого циклу. Позиціонується як легковажне рішення, покликане спростити життя DevOps-інженерам. Веб-інтерфейс дозволяє керувати хостами з Docker, контейнерами (+ перегляд статистики та логів), шаблонами (образи, інтегровані з Docker Hub), мережами, реєстрами, політиками (які хости, якими контейнерами будуть використовуватися і як розподіляти ресурси). Вміє перевіряти стан контейнерів (health checks). Поширюється та розгортається як Docker-образ. Працює із Docker 1.12+. (Див. також знайомство з програмою в блозі VMware з великою кількістю скріншотів.)

DockStation

  • Сайт; GitHub (без вихідного коду).
  • Ліцензія: пропрієтарна (freeware).
  • ОС: Linux, Mac OS X, Windows.
  • Мови/платформа: Electron (Chromium, Node.js).

Огляд інтерфейсів GUI для управління Docker-контейнерами

DockStation - молодий проект, створений білоруськими програмістами (які, до речі, шукають інвесторів для її подальшого розвитку). Дві головні особливості — орієнтованість на розробників (не на DevOps-інженерів чи сисадмінів) з повноцінною підтримкою Docker Compose та закритість коду (безкоштовно для використання, а за гроші автори пропонують персональну підтримку та доопрацювання можливостей). Дозволяє не лише керувати образами (підтримується Docker Hub) та контейнерами (+ статистика та логи), а й заводити проекти з візуалізацією зв'язків контейнерів, задіяних у проекті. Також є парсер (перебуває в бета-версії), що дозволяє конвертувати команди docker run у форматі Docker Compose. Працює з Docker 1.10.0+ (Linux) та 1.12.0 (Mac+Windows), Docker Compose 1.6.0+.

Простий інтерфейс Docker

  • GitHub.
  • Ліцензія: Open Source (MIT License).
  • ОС: Linux, Mac OS X, Windows.
  • Мови/платформа: Electron, Scala.js (+ React on Scala.js).

Огляд інтерфейсів GUI для управління Docker-контейнерами

Простий інтерфейс для роботи з Docker, який використовує Docker Remote API. Дозволяє керувати контейнерами та образами (за допомогою Docker Hub), підключатися до консолі, переглядати історію подій. Має механізми видалення контейнерів і образів, що не використовуються. Проект знаходиться в бета-версії та розвивається дуже повільно (реальна активність, судячи з комітів, затихла у лютому цього року).

Інші варіанти

В огляд не потрапили:

  • фермер — платформа управління контейнерами, що має функції оркестрування та підтримку Kubernetes. Open Source (Apache License 2.0); працює в Linux; написано на Java. Має веб-інтерфейс Інтерфейс Rancher на Node.js.
  • Kontena — «дружня до розробників платформа для запуску контейнерів у production», яка по суті конкурує з Kubernetes, але позиціонується як більш готове «з коробки» і просте у використанні рішення. Крім CLI та REST API проект пропонує веб-інтерфейс (скріншот) для управління кластером та його оркеструванням (включаючи роботу з вузлами кластера, сервісами, томами, секретами), перегляду статистики/логів. Open Source (Apache License 2.0); працює у Linux, Mac OS X, Windows; написано на Ruby.
  • Data Pulley - Проста утиліта, що має мінімум функцій та документації. Open Source (MIT License); працює в Linux (є лише пакет для Ubuntu); написано на Python. Підтримує Docker Hub для зображень, перегляд логів для контейнерів.
  • Panamax — проект, який ставив за мету «зробити деплою складних контейнеризованих додатків таким простим, як drag-n-drop». Для цього було створено свій каталог шаблонів для деплою додатків (Panamax Public Templates), результати з якого показуються при пошуку образів/додатків нарівні з даними Docker Hub. Open Source (Apache License 2.0); працює у Linux, Mac OS X, Windows; написано на Ruby. Інтегрований з ОС CoreOS та системою для оркестрування Fleet. Судячи з видимої в інтернеті активності, перестав підтримуватись у 2015 році.
  • Dockly - консольний графічний інтерфейс для управління контейнерами та образами Docker. Open Source (MIT License); написано на JavaScript/Node.js.

Наостанок: як виглядає GUI в Dockly? Обережно, GIF на 3,4 Мб!Огляд інтерфейсів GUI для управління Docker-контейнерами

PS

Читайте також у нашому блозі:

Джерело: habr.com

Додати коментар або відгук