Продолжаем наши обзоры плагинов к GIgaIDE. Первая статья здесь, последняя доступна по этой ссылке. На этот раз в нашем обзоре — плагины Docker и Remote, доступные в версии GigaIDE PRO и обновляемые с маркетплейса.

Начнём с рассказа про плагин Docker.

Поддержка Containers и Images

Плагин Docker поддерживает все операции управления образами и контейнерами, включая создание Run-конфигураций для запуска контейнеров. Для образов (Images) поддерживается:

  • работа с реестрами образов Docker и Podman;

  • поиск и загрузка образов из реестра;

  • создание контейнера из загруженных образов.

Для контейнеров (Containers) поддерживается:

  • запуск контейнера через Run-конфигурацию;

  • управление жизненным циклом контейнера;

  • отслеживание выполнения приложений в контейнере;

  • выполнение команд через терминал контейнера;

  • работа с файловой системой контейнера, включая выгрузку файлов;

  • просмотр журналов контейнера.

Подчеркну, что вся описанная функциональность для Docker также реализован и для Podman.

Скриншот GigaIDE, демонстрирующий работу с контейнерами
Скриншот GigaIDE, демонстрирующий работу с контейнерами
Создание и управление контейнером

Быстрое создание и запуск:

  1. Откройте Settings → Tools → Docker. Настройте параметры подключения к Docker. Проверьте соединение кнопкой «Check Connection».

  2. Откройте окно Services (View → Tool Windows → Services). Т��м появится значок Docker, а также список контейнеров (Containers) и образов (Images).

  3. На узле Images вызовите контекстное меню и выберите команду «Pull Images». В контекстной панели выполните поиск образа, который необходимо загрузить.

  4. Каждый загруженный образ будет отображаться как дочерний узел узла Images.

  5. Выберите образ, для которого нужно создать контейнер, и через контекстное меню вызовите команду «Create container».

  6. В диалоговом окне Run-конфигурации контейнера можно оставить параметры по умолчанию и нажать «Run». После создания контейнер будет доступен как отдельный дочерний узел узла Containers.

  7. В процессе сборки и запуска информация будет отображаться на вкладке Build Log панели свойств контейнера.

Вкладки на панели свойств контейнера:

  • Log — журналы, выводимые приложением контейнера после его запуска;

  • Properties — свойства, с которыми был создан контейнер;

  • Environment Variables — переменные окружения контейнера;

  • Port Bindings — список портов, доступных для вызова приложений контейнера;

  • Volume Bindings — список смонтированных томов;

  • Files — дерево директорий и файлов контейнера;

  • Attached Console — консоль основного процесса, выполняемого в контейнере.

Управление запущенным контейнером осуществляется через контекстное меню. Основные команды:

  • Stop, Start, Restart container — остановка, запуск, перезапуск контейнера;

  • Delete container — удаление контейнера;

  • Show Logs/Files — открытие окна с журналами и файлами;

  • Attach — подключение к главному процессу в контейнере;

  • Inspect — просмотр конфигурации в JSON-формате;

  • Exec — выполнение пользовательской команды в контейнере.

Видеообзор функциональности плагина Docker по работе с образами и контейнерами:

В ближайших релизах появится поддержка файлов Docker Compose.

Поддержка Dockerfile

Плагин Docker также поддерживает подсветку синтаксиса Dockerfile, создание Dockerfile из шаблона, автодополнение по ключевым словам и именам загруженных образов. Дополнительно пользователь может настроить цветовую палитру подсветки синтаксиса.

Dockerfile в редакторе кода в GigaIDE
Dockerfile в редакторе кода в GigaIDE
Работа с Dockerfile

Создание нового:

  1. Выберите в проекте нужную папку или пакет.

  2. Через контекстное меню выберите New → Dockerfile. Будет создан новый файл с шаблоном команд.

Создание и запуск Run-конфигурации:

  1. Откройте меню Edit Configurations.

  2. В окне вызовите создание новой конфигурации «Add new configuration» и выберите «Dockerfile».

  3. Укажите целевой Dockerfile из проекта.

  4. Остальные шаги можно пропустить, сразу запустив конфигурацию кнопкой «Run».

Видеообзор функциональности плагина Docker по созданию и запуску Dockerfile:

Удалённый доступ к файлами и консоли с Remote

Плагин Remote по протоколу SFTP позволяет:

  • выполнять в IDE операции с файлами на удалённом ресурсе;

  • выполнять в IDE консольные команды для удалённого ресурса.

Поскольку файлы редактируются в IDE, доступна подсветка синтаксиса и часть инспекции, как если бы файл находился локально. Также можно отслеживать изменения в локальной редактируемой копии файла по сравнению с его удалённой версией.

Удалённый редактируемый файл в редакторе кода GigaIDE. Справа - файловая структура удалённого ресурса.
Удалённый редактируемый файл в редакторе кода GigaIDE. Справа — файловая структура удалённого ресурса.
Настройка соединения и основные операции

Настройка соединения:

  1. Откройте Settings → Tools → SSH Configuration. Настройте параметры подключения по SSH.

  2. Откройте Settings → Tools → Remote File Access. Настройте параметры подключения к SFTP с использованием созданной SSH-конфигурации.

  3. Откройте окно Remote. Там будет доступен список подключений. Дважды кликните на целевом подключении. Если подключение пройдёт успешно, то в отобразится файловая структура.

Чтобы отредактировать файл, дважды кликните по нему. После завершения редактирования для загрузки файла нажмите кнопку «Upload file» на верхней панели инструментов окна редактора. Если при закрытии IDE останутся невыгруженные изменённые файлы, то GigaIDE предложит их выгрузить.

Основные операции над файлами и папками, доступные через контекстное меню:

  • Create file — создает новый файл на удаленном ресурсе;

  • Create dir — создаёт новую дочернюю директорию на удалённом ресурсе;

  • Delete — удаляет выбранный файл или директорию;

  • Rename — переименовывает выбранный файл или директорию;

  • Download — загружает файл на локальную машину (только для файлов).

Для удалённого подключения к терминалу достаточно настроить только SSH Configuration.

Чтобы подключиться к терминалу, в окне Terminal выберите целевую SSH Configuration в выпадающем списке «New Predefined Session».

Видеообзор функциональности плагина Remote ниже:

Пока плагин Remote в части удалённого подключения к файловому хранилищу поддерживает только SFTP. В будущем будет дополнительно реализована поддержка и других протоколов: AWS S3, Hadoop Distributed System (HDFS), Google Cloud Storage.


Как развивается функциональность GigaIDE, можно узнать из наших ежемесячных обзоров. Обзор за февраль доступен по этой ссылке

Если у вас есть вопросы или предложения по функциональности, пишите в поддержку: https://gitverse.ru/support

Автор: Андрей Слекеничс, PO GigaIDE