Контейнеры Docker помогают разработчикам во многих аспектах. Преимущества контейнеризации включают в себя улучшение совместной работы, снижение затрат, гибкость и возможность быстрого тестирования / развёртывания приложений. С ростом технологического прогресса не менее важно уметь управляться с контейнерами Docker, даже если вы используете лучшие платформы хостинга, вам нужны эффективные инструменты для управления ими.
В этой статье мы сосредоточимся на некоторых простых и эффективных инструментах CLI, которые помогут вам контролировать и управлять контейнерами Docker.
Управление контейнерами Docker при помощи инструментов CLI
Несмотря на широкое распространение графических пользовательских интерфейсов (GUI), многие администраторы по-прежнему предпочитают командную строку или терминал (CLI).
Но почему это так?
Как правило, графические интерфейсы постоянно эволюционируют и могут меняться в принципах своей работы и расположении опций.
В отличие от них, CLI, как правило, не получает никаких радикальных изменений, которые сбрасывают кривую обучения. Поэтому, привыкнув к CLI, вам не придётся сильно беспокоиться о его обновлениях, а также отпадёт необходимость постоянно приспосабливаться к новым изменениям.
Кроме того, графический интерфейс может иметь глупые ошибки и проблемы, которые могут затруднить работу по управлению Docker'ом.
В свою очередь, инструмент CLI в основном стабилен и не имеет никаких странных глюков / багов.
Не стоит также забывать, что если дело касается инструмента командной строки, то вы можете удалённо управлять контейнерами Docker, используя лишь ваш мобильный телефон.
Инструменты командной строки для управления Docker
Со всеми этими преимуществами управлять контейнерами Docker с помощью инструментов CLI вполне удобно и безопасно.
Однако было бы полезно, если бы вы уже знали, как выполнять команды внутри контейнера Docker.
Но какие варианты можно попробовать? Достаточно ли возможностей терминальных инструментов командной строки для мониторинга нескольких контейнеров и управления ими?
Давайте рассмотрим несколько инструментов, которые вы можете попробовать.
1. Dockly
Если вам нужен живой терминальный интерфейс для управления или мониторинга контейнеров и сервисов, Dockly — фантастический инструмент.
Это приложение Node.js CLI, что означает, что вы можете установить его с помощью репозитория npm. Вам не нужно выходить из CLI или запоминать все команды docker или флаги опций, Dockly делает всё проще.
Инструмент активно поддерживается и довольно популярен среди других инструментов.
Он может транслировать журналы всех запущенных контейнеров docker в окно журнала, где вы можете легко прокручивать их вверх / вниз по мере необходимости. Вы также получаете возможность быстро создать новую сессию bash.
Dockly также поддерживает Docker swarm mode (режим роя). Таким образом вы можете переключаться между локальными контейнерами и режимом роя.
2. Dive
Dive — это интересный инструмент, позволяющий исследовать образ docker и его содержимое.
Цель инструмента — помочь вам проанализировать свой образ docker и выработать идеи по уменьшению/управлению его размером.
Инструмент не ограничивается только возможностью просмотра слоёв и содержимого, он также указывает дополнительные детали изменений файлов (изменённых, добавленных или удалённых) в дереве файлов. Вы можете проанализировать свой образ вручную или попробовать оценить его оптимальность.
Инструмент также может определить, сколько пустого пространства содержит ваш образ.
Вы также можете запустить его в своём конвейере Cl, чтобы убедиться, что вы не тратите дополнительное пространство впустую. Перейдите на его страницу на GitHub, чтобы узнать, как его установить и использовать.
3. Ctop
Если вам не нужно много функций, а главное — мониторинг сервисов, Ctop — идеальный выбор.
Он предоставляет вам метрики в реальном времени для нескольких контейнеров, включая такие важные детали, как CID, использование ЦП, памяти и сетевую статистику. И всё это в простом пользовательском интерфейсе.
Несмотря на то что он в первую очередь упрощает мониторинг нескольких контейнеров, у него также есть возможность мониторинга одного конкретного контейнера.
Вы можете установить сборку пакета с его страницы на GitHub или использовать некоторые предварительно созданные бинарники, поддерживаемые сторонними разработчиками.
4. Dry
Dry — это простое приложение, не требующее использования внешних библиотек. Оно представляет из себя терминальный инструмент, помогающий отслеживать и управлять контейнерами docker.
В нём также есть поддержка кластера swarm. Таким образом вы можете искать информацию либо о контейнерах, либо о настройке роя.
Для удобства он также поддерживает многие команды Docker CLI (с теми же функциями), которые вы можете использовать внутри Dry.
Таким образом, вам не придётся выходить из CLI и большую часть времени вы можете просто пользоваться этим инструментом.
5. Lazy Docker
Lazy Docker — это высоко оценённый инструмент, который предоставляет все функции, которые вы только сможете захотеть применить для контейнера Docker из всего одного пользовательского интерфейса.
Вам не придётся запоминать различные команды Docker для выполнения различных действий.
Вы можете просматривать состояние ваших контейнеров Docker или окружения, а также быстро получать доступ к журналам. Вы можете просматривать практически всё, что связано с контейнером/сервисом, включая графики ASCII, слои образа и многое другое.
В программе также предусмотрена поддержка мыши. Таким образом, вы можете нажимать и кликать, чтобы быстро выполнять действия, что обеспечивает дополнительный уровень удобства.
Вам кажется, что в программе упущены некоторые действия? Не волнуйтесь, вы можете добавить свою собственную команду в инструмент, чтобы работать ещё эффективнее.
6. Poco
Poco не так популярен, как некоторые другие инструменты, упомянутые в этом списке. Однако он помогает выполнять определённые задачи через CLI.
С помощью Poco можно организовывать и управлять проектами Docker/Docker-compose и Kubernetes.
Независимо от сложности проекта, он использует простые конфигурационные файлы YAML, чтобы помочь вам найти проект или инициализировать его в локальном окружении.
Многие разработчики действительно заняты созданием и управлением контейнерами, не задумываясь об организации/сохранении их доступности.
Благодаря Poco вам больше не придётся самостоятельно заниматься организацией, вы сможете использовать простые конфигурационные файлы. Более того, он также поддерживает контроль версий с помощью Git и SVN, что делает его ещё более эффективным.
7. Sen
Sen может стать хорошим выбором, если вам нужна функциональность и простой пользовательский интерфейс для управления контейнерами docker.
Sen поможет вам интерактивно управлять контейнерами и образами. Вы также можете выполнять основные действия по запуску, остановке, перезапуску, завершению или удалению службы или контейнера.
На панели инструментов все контейнеры и образы отображаются в упорядоченном виде. Начиная с журналов и заканчивая обновлениями в реальном времени, вы получаете множество функций от инструмента, который на первый взгляд кажется таким простым.
К сожалению, Sen не так активно поддерживается, как другие инструменты CLI. Тем не менее он получает исправления ошибок. Если вам не нужны дополнительные функции, вы можете положиться на этот инструмент.
8. Skopeo
Skopeo, в отличие от некоторых других инструментов, фокусируется на операциях с образами контейнеров и их репозиториями. Он не помогает вам контролировать/управлять сервисами внутри контейнеров docker, но позволяет управлять образами.
Некоторые функции включают копирование образа из / в реестры хранилища, просмотр удалённого образа для анализа свойств и слоёв без извлечения образа, удаление образа и многое другое.
Skopeo не требует привилегий root для большинства функций. Также для его работы не требуется демон docker (Docker Daemon). С помощью этого инструмента можно управлять образами Open Container (OCI) и Docker v2.
В заключение: инструменты CLI для повышения эффективности управления Docker
Большинство опытных пользователей полагаются на инструменты CLI для выполнения задач, и это не является исключением, когда речь идёт о контейнерах Docker.
Если вы хотите контролировать систему, управлять службами, организовывать образы или получить любую другую возможность эффективного управления развёртыванием Docker, инструмент командной строки должен помочь вам.
Даже если вы новичок, привыкание к инструментам CLI может дать вам большую гибкость и контроль над всем, что вы делаете, используя Docker.
Также существует ещё несколько типов инструментов CLI, но вы и так уже получите хороший старт с помощью вышеупомянутых. А теперь вы можете взглянуть на архитектуру Docker.
НЛО прилетело и оставило здесь промокод для читателей нашего блога:
— 15% на все тарифы VDS (кроме тарифа Прогрев) — HABRFIRSTVDS.