Преглед на GUI интерфејси за управување со Docker контејнери
Работата со Docker во конзолата е позната рутина за многумина. Сепак, има моменти кога GUI/веб интерфејсот може да биде корисен дури и за нив. Написот дава преглед на најзабележителните решенија досега, чии автори се обидоа да понудат попогодни (или погодни за некои случаи) интерфејси за запознавање со Docker или дури и сервисирање на големи инсталации на него. Некои од проектите се многу млади, додека други, напротив, веќе изумираат...
Portainer (порано познат како UI за Docker) е најпопуларниот веб-интерфејс за работа со Docker домаќините и Docker Swarm кластерите. Започнува многу едноставно - со распоредување на слика на Docker, на која адресата/сокетот на домаќинот на Docker се пренесува како параметар. Ви овозможува да управувате со контејнери, слики (може да ги преземете од Docker Hub), мрежи, волумени, тајни. Поддржува Docker 1.10+ (и Docker Swarm 1.2.3+). Кога гледате контејнери, за секој од нив се достапни основни статистички податоци (користење ресурси, процеси), дневници и поврзување со конзолата (веб терминал xterm.js). Има свои списоци за пристап што ви дозволуваат да ги ограничите правата на корисниците на Portainer на различни операции во интерфејсот.
Јазици/платформа: Electron, Node.js, React и AltJS.
Стандарден графички интерфејс за корисниците на Docker на Mac OS X и Windows, кој е дел од Docker Toolbox, инсталатер за збир на комунални услуги што ги вклучува и Docker Engine, Compose и Machine. Има минимален сет на функции кои овозможуваат преземање слики од Docker Hub, управување со основните поставки на контејнерот (вклучувајќи волумени, мрежи), прегледување дневници и поврзување со конзолата.
Бродоградилиштето не е само интерфејс, туку систем за управување со ресурси на Docker, кој се заснова на присуство на сопствен API. API-то во бродоградилиштето е РЕСТОЛНО врз основа на JSON формат, 100% компатибилен со Docker Remote API, нуди дополнителни функции (особено, автентикација и управување со списокот за пристап, евиденција на сите извршени операции). Овој API е основата околу која е веќе изграден веб-интерфејсот. За складирање на информации за услугата кои не се директно поврзани со контејнери и слики, бродоградилиштето користи RethinkDB. Веб-интерфејсот ви овозможува да управувате со контејнери (вклучувајќи гледање статистики и дневници, поврзување со конзолата), слики, јазли на кластерот Docker Swarm и приватни регистри.
Платформа од VMware дизајнирана за автоматско распоредување на контејнеризирани апликации и управување со нив во текот на нивниот животен циклус. Позициониран како лесно решение дизајнирано да им го олесни животот на инженерите на DevOps. Веб-интерфејсот ви овозможува да управувате со домаќините со Docker, контејнери (+ статистика за прегледување и дневници), шаблони (слики интегрирани со Docker Hub), мрежи, регистри, политики (кои хостови ќе се користат од кои контејнери и како да се распределат ресурсите). Може да го провери статусот на контејнерите (здравствени проверки). Дистрибуиран и распореден како слика на Docker. Работи со Docker 1.12+. (Видете исто така вовед во програмата во Блог на VMware со многу слики од екранот.)
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+.
Јазици/платформа: Electron, Scala.js (+ React on Scala.js).
Едноставен интерфејс за работа со Docker со користење на Docker Remote API. Ви овозможува да управувате со контејнери и слики (со поддршка за Docker Hub), да се поврзувате со конзолата и да ја прегледувате историјата на настани. Има механизми за отстранување на неискористени контејнери и слики. Проектот е во бета фаза и се развива многу бавно (вистинската активност, судејќи според обврските, згасна во февруари оваа година).
други опции
Не е вклучено во прегледот:
Ранчер е платформа за управување со контејнери со карактеристики за оркестрација и поддршка за Kubernetes. Отворен код (Апачи лиценца 2.0); работи на Linux; напишано во Јава. Има веб-интерфејс Ранчер интерфејс на Node.js.
Контена — „Платформа погодна за програмери за водење на контејнери во производството“, која во суштина се натпреварува со Kubernetes, но е позиционирана како решение повеќе надвор од кутијата и лесно за користење. Покрај CLI и REST API, проектот нуди веб-интерфејс (скриншот) за управување со кластерот и неговата оркестрација (вклучувајќи работа со кластерски јазли, услуги, томови, тајни), гледање статистика/дневници. Отворен код (Апачи лиценца 2.0); работи на Linux, Mac OS X, Windows; напишано во Руби.
Макара за податоци - едноставна алатка со минимум функции и документација. Отворен код (МИТ лиценца); работи на Linux (достапен е само Ubuntu пакетот); напишано во Python. Поддржува Docker Hub за слики, прегледување дневници за контејнери.
Панамакс е проект со цел „да го направи распоредувањето на сложени контејнеризирани апликации едноставно како drag-n-drop“. За таа цел, создадовме сопствен каталог на шаблони за распоредување апликации (Јавни шаблони на Панамакс), резултатите од кои се прикажуваат при пребарување на слики/апликации заедно со податоци од Docker Hub. Отворен код (Апачи лиценца 2.0); работи на Linux, Mac OS X, Windows; напишано во Руби. Интегриран со системот за оркестрација CoreOS и Fleet. Судејќи според активноста видлива на Интернет, таа престана да се поддржува во 2015 година.
Dockly - конзола GUI за управување со контејнери и Docker слики. Отворен код (МИТ лиценца); напишано во JavaScript/Node.js.
Конечно: како изгледа GUI во Dockly? Внимавајте, GIF е 3,4 MB!