Автоматизация сборки Docker-образов

kpv
Разработка приложений уровня предприятия заканчивается успешной установкой информационной системы и её внедрением в бизнес-процессы. Для обеспечения успешной интеграции приложения в действующие бизнес-процессы, как правило, разрабатывают инструкции и проводят учебные курсы. Установка и внедрение приложений в корпоративную инфраструктуру может быть выполнена различными способами: ручная установка и настройка непосредственно на виртуальных или физических машинах, или более современный вариант - автоматизированное разворачивание кластера или стека сервисов, представляющих собой контейнеры. Промышленным стандартом для контейнеризации можно считать решение Docker, которое разрабатывается одноимённой компанией. Подробнее об использовании Docker для разворачивания решений можно прочитать в статье о базовых технологиях платформы Flexberry.
Платформа Flexberry предоставляет возможности по созданию сложных корпоративных приложений, каждое из которых может быть развёрнуто в виде некоторого количества отдельных сервисов. Каждый из таких сервисов может быть естественным образом представлен в виде Docker-контейнера. В самом простейшем варианте один сервис может содержать базу данных PostgreSQL, а второй сервис – веб-приложение.
Для удобного создания Docker-контейнеров, включающих в себя сервисы разрабатываемых решений в платформе Flexberry предусмотрен ряд базовых образов. В Docker реализован механизм наследования, который позволяет «добавлять» в базовый образ что-то новое. Docker-образы строятся на основе файлов специального вида – Dockerfile. Ввиду того, что платформа Flexberry соблюдает принцип свободного программного обеспечения, набор Dockerfile для всех базовых образов опубликован в открытом репозитории на GitHub.
Компания Docker предоставляет не только программное обеспечение для создания образов и запуска контейнеров, но и ряд интернет-сервисов, облегчающих работу с контейнерами. Так, для открытых проектов доступен репозиторий Docker-образов – Docker Hub. Этот репозиторий может использоваться для получения популярного ПО, которое уже кто-нибудь «научил» работать в Docker-контейнере. Базовые Docker-образы, которые разработаны для проектов на Flexberry расположены в разделе организации Flexberry.
Разработчикам образов Docker Hub предоставляет возможность автоматизации процесса сборки Docker-образов. Используя этот подход, все базовые Docker-образы Flexberry собираются и публикуются в репозитории в автоматическом режиме. Это позволяет быстро выполнять доработку образов, в том числе принимать Pull request от сообщества, если пользователям платформы потребуется внести что-нибудь нужное в базовые образы. В качестве ещё одного примера успешного использования контейнеризации можно рассказать о Flexberry Service Bus, которая может быть легко развёрнута и запущена на компьютере по краткой инструкции.

Поделиться в: ВКонтакте, Twitter, Facebook.