Локальные раннеры (Self-hosted)
Локальный (self-hosted) раннер — это приложение, которое вы развертываете и которым управляете самостоятельно. Такой раннер подключается к вашему экземпляру GitVerse и выполняет задачи workflow в контролируемой вами среде (на хосте или в контейнере).
Рекомендации
Self-hosted раннеры подходят, если вам нужно:
- запускать сборки и тесты в специфической инфраструктуре (например, со своими зависимостями, библиотеками, GPU и т. д.);
- работать с внутренними сетями кодовой базой физически или по соображениям безопасности недоступной из облака;
- выполнять долговременные задачи без ограничений по времени выполнения.
Режимы работы
Раннеры поддерживают два режима работы: в Docker-контейнере и на хосте. Для режима Docker требуется установленный и запущенный Docker daemon; если вы планируете выполнять job’ы напрямую на хосте, Docker не обязателен.
Рекомендуется запускать job’ы в контейнерах — это повышает изоляцию и воспроизводимость окружения.
Загрузка
Раннеры GitVerse доступны как нативные приложений под различные ОС и архитектуры, а также в виде Docker-образов.
Платформа | Архитектура | Версия | Ссылка |
---|---|---|---|
Linux | amd64 | 4.3.0 | Скачать |
Windows | amd64 | 4.3.0 | Скачать |
macOS | arm64 | 4.3.0 | Скачать |
macOS | amd64 | 4.3.0 | Скачать |
Docker | any | 4.3.0 | docker pull gitverse.ru/gitverse/act-runner:4.3.0 |
Все версии доступны в пакетах организации GitVerse
После загрузки, для Linux и MacOS сделайте файл исполняемым и проверьте версию:
chmod +x act_runner
./act_runner --version
Для MacOS выполните сброс атрибутов файла:
xattr -c act_runner
Регистрация и запуск
Получение токена регистрации
Раннеры регистрируются на одном из уровней:
- Уровень репозитория — раннер привязан к конкретному репозиторию;
- Уровень организации — раннер доступен внутри организации.
Токен регистрации получают в UI (Настройки репозитория/организации -> Раннеры -> Добавить раннер) или через API получения токена раннера уровня репозитория или уровня организации
Регистрация раннера
Интерактивный режим
./act_runner register
Интерактивный процесс спросит или проставит по умолчанию:
- URL инстанса (по-умолчанию
https://gitverse.ru/sc
); - регистрационный токен (ввод обязателен);
- имя раннера (по умолчанию - ваш hostname);
- метки (labels).
Неинтерактивный режим
act_runner register \
--no-interactive \
--instance https://gitverse.ru/sc \
--token HemPbniNKaEjHkefe6DpNd4Ii75jk2rF5x1QLx7R
--name Demo
Регистрация раннера в Docker-контейнере
При использовании раннера в Docker-контейнере процесс отличается. Регистрация и запуск объединены в один шаг, данные для регистрации передаются при запуске:
docker run \
-v /var/run/docker.sock:/var/run/docker.sock \
-e RUNNER_REGISTRATION_TOKEN=<registration token> \
gitverse.ru/gitverse/act-runner:4.3.0
Запуск раннера
./act_runner daemon
Метки и среды выполнения
С 20 октября 2025 метка ubuntu-latest
будет относиться к облачному раннеру.
Раннеры v4.3.0 уже не имеют метки ubuntu-latest
по-умолчанию.
При регистрации self-hosted раннера, ему автоматически присваиваются стандартные метки (labels).
Эти метки отражают операционную систему, аппаратную архитектуру раннера, а также влияют на режим, в котором выполняются задачи:
Режим | Метка | Описание | Пример использования |
---|---|---|---|
Host | self-hosted , linux , windows , macos , x64 , arm64 | Задачи выполняются на самом хосте, где установлен раннер. | runs-on: [self-hosted, linux, x64] |
Docker | img-ubuntu-latest , img-ubuntu-22.04 , img-ubuntu-20.04 | Раннер запускает задачу в контейнере с указанным образом. | runs-on: img-ubuntu-20.04 |
Создание своих меток
Метки, в том числе и по умолчанию, задаются списком значений, разделенных запятой. Стандартный набор меток для раннера под Linux выглядит так:
linux:host, x64:host, self-hosted:host,
img-ubuntu-latest:gitverse:gitverse/runner-image:ubuntu-latest, img-ubuntu-22.04:gitverse:gitverse/runner-image:ubuntu-22.04, img-ubuntu-20.04:gitverse:gitverse/runner-image:ubuntu-20.04
Метка img-ubuntu-20.04:gitverse:gitverse/runner-image:ubuntu-20.04
, где:
img-ubuntu-20.04
- сама метка и указыывается вruns-on: img-ubuntu-20.04
;gitverse:gitverse/runner-image:ubuntu-20.04
указывает окружение для выполнения задач в Docker-контейнере, созданном из образаgitverse/runner-image:ubuntu-20.04
.
Метка self-hosted:host
self-hosted
- сама метка и указыывается вruns-on: self-hosted
;host
указывает, что каждая задача будет выполняться на самом хосте, где установлен раннер.
Суффикс
:host
не является обязательным, но рекомендуется использовать уникальные метки, напримерlinux_amd64:host
илиwindows:host
, чтобы избежать неоднозначностей и ошибок при маршрутизации задач.