
Если вы хотите управлять хостами Docker или кластерами Swarm не только из командной строки, но и из приятного глазу Web-UI интерфейса, посмотрите в сторону Portainer. Portainer — это Open Source проект, в котором вам предоставляется образ web-интерфейса минимального размера (3 МБ) для управления механизмом Docker Engine или кластером Swarm.
Как видно из снимка экрана, Portainer — это отличное решение, которое не только предельно наглядно отображает полную информацию по вашим хостам и кластерам Docker, но и позволяет эффективно ими управлять, предоставляя вам множество возможностей, о которым мы кратко поговорим ниже.
.png)
Если ваш Docker Engine запущен в Swarm mode, вам становится доступно меню управления сервисами Swarm кластера. Процесс создания сервиса продемонстрирован на экране ниже. Прямо из Web-UI вы можете задать все значимые параметры сервиса:
.png)
Помимо управления службами Portainer дает возможность управлять жизненным циклом контейнеров, запущенных на вашем хосте или кластере. Интерфейс создания контейнера ничем не отличается от интерфейса создания сервиса.
.png)
Если перейти в управление конкретным контейнером, то у вас появится возможность наблюдать за потреблением ресурсов конкретного контейнера, просмотра логов, а также подключению к интерактивной консоли (да, можно зайти внутрь работающего контейнера в терминальную сессию и выполнять нужные вам команды).
Не знаю как вам, а мне кажется очень удобной возможность выделить мышкой сразу 5-6 не используемых образов, а затем удалить их в один клик.
.png)
Более того, при клике на каждый конкретный образ можно изменить его тег, получить информацию о размере, дате создания, а также информацию из Dockerfile, такую как, например: CMD, ENTRYPOINT, EXPOSE, VOLUME и переменные окружения внутри контейнера из ENV.
Возможностей работы с сетями в Portainer пока не очень много. В списке с сетями отображается лишь скудная информация о типе сети и ее адресации.
.png)
В принципе все, что можно получить из docker volume inspect удобно и наглядно отображается в едином интерфейсе, дополняя остальную функциональность.
.png)
Состав кластера, а также количество задействованных узлов и доступных в кластере ресурсов можно узнать в меню Swarm. При выборе каждого конкретного узла кластера можно очень удобно очистить его от виртуальных машин и остановить на нем аллокацию.
.png)
Portainer очень удобно использовать вместе со своей Docker Machine, чтобы иметь возможность управлять сразу всеми вашими Docker хостами и кластерами, определить очередное подключение е составит труда в соответствующем меню. Опция поддержки TLS также имеется.

В принципе, у Portainer очень достойная документация, но зачем же в нее ходить, если можно получить команду для запуска прямо не покидая страницу обзора?
$ docker run -d -p 9000:9000 -v ~/.docker/machine/certs:/certs portainer/portainer -H tcp://192.168.99.100:2376 --tlsverify
Данная команда запустит контейнер, содержащий Portainer на 9000 порту вашего Docker Engine. Я запускаю Portainer на своем ноутбуке. Флаг -v смонтирует сертификаты из моей домашней директории внутрь контейнера, чтобы предоставить мне возможность управлять любым Docker хостом или Swarm кластером, настроенным при помощи моей Docker Machine с использованием TLS аутентификации (очень удобно, когда вы администрируете множество хостов). Флаг -H указывает на IP адрес хоста, которым Portainer будет управлять — это нужно исключительно для формирования primary подключения (см последний скриншот).
Приятной работы!