Что такое пайплайны?
Пайплайн сборки — это последовательность действий или процессов, которые выполняются для достижения заданной цели в процессе разработки программного обеспечения. Он состоит из этапов, на каждом из которых выполняется определённая задача или набор задач.
Пайплайн обеспечивает непрерывность, гибкость, контроль качества и масштабируемость процесса разработки, позволяя автоматизировать, ускорять и упрощать создание программных продуктов.
Запуск пайплайна через веб-интерфейс
Для ручного запуска пайплайна перейдите в проекте в раздел «Репозитории Git» и выберите в меню «⋮» нужного репозитория пункт «Собрать». Или выберите нужный репозиторий и нажмите на кнопку «Собрать» в открывшемся разделе списка пайплайнов.
Подтвердите своё действие в открывшемся модальном окне и дождитесь завершения процесса сборки пайплайна.
Запуск пайплайна с помощью консольной утилиты
dockhost repository build <name> [options]
Подробнее о команде запуска принудительной сборке репозитория можно узнать в описании команды repository build
Просмотр результата сборки пайплайна
Для удобства работы с пайплайнами Вы можете посмотреть на результат вывода процесса сборки.
Для этого перейдите в проекте в раздел «Репозитории Git» и выберите нужный репозиторий, после этого откроется раздел списка пайплайнов репозитория.
Для просмотра лога сборки пайплайна нажмите на его номер. Лог сборки пайплайна можно просмотреть как в момент сборки, так и после её завершения.
Откат изменений пайплайна
Если собранный контейнер работает не так, как ожидалось, например, в коде была допущена ошибка, можно откатить текущий контейнер на предыдущую версию. Для этого перейдите в проекте в раздел «Репозитории Git» и выберите нужный репозиторий, после этого откроется раздел списка пайплайнов репозитория.
Выберите нужный пайплайн и в меню «⋮» нажмите на кнопку «Перезапустить»
Подтвердите своё действие в открывшемся модальном окне и дождитесь завершения процесса сборки пайплайна.
Использование встроенных переменных в ARG
Для каждого пайлайна существуют системные переменные, которые можно использовать как значение аргументов (ARG) сборки. Список доступных переменных представлен в таблице ниже:
| Переменная | Пример значения | Описание |
|---|---|---|
| CI_PIPELINE_ID | 5e8bc9dc-0561-4048-9caa-b1e067d7564f | ИД пайплайна |
| CI_PIPELINE_REVISION | 55f0864aaef52c9546707c83b49bbd1b21e9df74 | Хэш ревизии |
| CI_PIPELINE_REVISION_NUMBER | 131 | Номер ревизии |
| CI_PIPELINE_DATETIME | 2026-01-01T00:00:00.000Z | Дата и время запуска пайплайна |
| CI_REPOSITORY_ID | 2c8501d4-2951-45a1-b2d2-02e4d643ee2d | ИД репозитория |
| CI_REPOSITORY_BRANCH | main | Имя ветки репозитория |
| CI_REPOSITORY_URL | https://github.com/dockhost/example-python-telegram-bot.git | URL репозитория |
| CI_HASH | 957aabdaeed7a92d10cb5ff95963b27c | Случайный хэш |
Для того чтобы значение системной переменной было подставлено в значение аргумента (ARG), необходимо в значение аргумента (ARG) указать название переменной с префиксом $, например $CI_PIPELINE_ID.
Для удобства в начале лога сборки пайплайна выводится список всех доступных переменных и их значений.
CI_PIPELINE_DATETIME, CI_HASH уникальны для каждой сборки и перезапуск пайплайна приведет к генерации новых значений.
Сборка образа из приватного реестра
Если в Dockerfile репозитория используется базовый образ из приватного реестра (например, FROM private-registry.com/image:tag), платформа Dockhost автоматически выполнит авторизацию во всех подключённых к проекту реестрах перед началом сборки.
Для этого достаточно подключить приватный реестр к проекту. После подключения авторизация будет выполняться автоматически при каждой сборке пайплайна.
Подробнее о подключении реестров образов читайте в статье «Подключение реестра образов».
Авторизация выполняется только в те реестры, которые подключены к проекту на момент запуска пайплайна. Если реестр был подключён после запуска сборки, авторизация в нём не выполнится до следующего запуска.