Перейти к содержанию

Монтирование томов в GitFlic Runner с типом Docker

Функционал агента с типом Docker позволяет настраивать монтирование томов для вспомогательных контейнеров конвейера с помощью параметров при регистрации агента или с помощью параметров в файле application.properties.

С помощью параметра docker.volumes можно подключать как связываемые тома (bind mounts), именованные тома (named volumes), так и анонимные, используя синтаксис, аналогичный флагу -v в Docker. Данный параметр позволяет использовать разные типы хранилищ данных, что особенно полезно для сохранения состояния между запусками контейнеров.

Пример монтирования связываемых и именованных томов:

docker.volumes[0]=/local/path:/container/path
docker.volumes[1]=data:/container/path

Параметр docker.volume-driver указывает, какой драйвер будет использоваться при создании томов. По умолчанию используется драйвер local, который предназначен для работы с локальными файловыми системами. Однако можно настроить другие драйверы, например, для работы с сетевыми хранилищами (например, nfs для использования NFS), что позволяет подключать тома, расположенные на удаленных серверах. Подробная информация по использованию различных драйверов доступна в официальной документации Docker.

Параметр docker.volume_driver_ops позволяет указать дополнительные опции для выбранного драйвера. Например, для драйвера nfs можно указать адрес сервера и параметры монтирования, такие как режим доступа к тому (чтение/запись).

Пример:

docker.volume-driver=nfs
docker.volume_driver_ops=type=nfs,addr=192.168.1.100,rw
docker.volumes[0]=/mnt/data:/container/data

Если требуется использовать анонимные тома с возможностью указания директории для их хранения, параметр docker.cache_dir позволяет указать абсолютный путь, относительно которого будут размещаться анонимные тома.

Пример:

docker.cache_dir=/var/cache/gitflic-runner

Параметр docker.disable_cache управляет локальным кэшированием, основанным на анонимных томах. Если параметр установлен в значение true, локальный кэш отключается и создание анонимных томов (объявленных без хостовой директории) становится недоступным.

Драйвера для монтирования томов контейнера

Различные драйвера можно устанавливать с помощью плагинов для Docker. Описание работы плагинов доступно в официальной документации Docker на странице Docker Engine plugins.