После начала работы с Дженкинсом этот пост получит агента Дженкинса и запустить ваши сборки. Пожалуйста, убедитесь, что вы завершили инструкции по предыдущему сообщению.
Мы запустим агенты Jenkins в контейнерах Docker, как и для контроллера.
Нам нужно отрегулировать Docker Run
слегка командует на этот раз. Но сначала нам нужно определить сеть Docker. Итак, давайте начнем с создания сети Jenkins.
docker network create jenkins
Приведенная выше команда будет определять сеть Docker, в которой будут работать оба наши контейнеры (контроллер и агент).
Мы хотим настроить оригинал Docker Run
команда для использования новой сети. Пожалуйста, запустите следующую команду, чтобы поднять контроллер Jenkins.
docker run --rm -p 8080:8080 --network jenkins -v "${HOME}/.jenkins:/var/jenkins_home" --name jenkins-controller jenkins/jenkins:lts
Теперь у нас бежит Дженкинс, давайте рассмотрим, чтобы http://localhost: 8080 и следуйте шагам ниже:
- Нажмите на Управление Дженкинсом слева.
- Под Конфигурация системы Раздел, нажмите на Управление узлами и облаками Анкет
- С левой стороны нажмите на Новый узел Анкет
- Вы можете назвать это все, что вам нравится.
- Я собираюсь позвонить своему агенту Смит Анкет
- Вам нужно будет помнить об этом на потом.
- Нажмите на Пержнатный агент радио коробка.
- Нажмите ОК Анкет
Теперь мы собираемся настроить агента немного больше. Вы можете поиграть с различными настройками, но чтобы держать нас на одной странице, пожалуйста, выполните следующие действия.
- Для Описание Поле, пожалуйста, заполните что -то описательное, чтобы вы знали, для чего это можно использовать. Фоу сейчас, введите Это агент Смит , что на самом деле не описательно!
Оставьте количество исполнителей в 1 Анкет
- Исполнители определяют, сколько заданий Jenkins может одновременно работать агент.
- Чем больше процессора/памяти вы даете, тем больше одновременных заданий вы можете выполнить.
- Введите /home/jenkins/agent/ в Удаленный корневой каталог текстовое поле.
Ярлык позволяет нам связывать конкретные задания с конкретными агентами.
- Например, у вас могут быть агенты Windows, Mac и Linux, которые запускают конкретное программное обеспечение, такие как Builds iOS.
- Это можно использовать для определения таких вещей.
- На данный момент это не важно для нас, поэтому мы можем оставить это пустым.
- Идите вперед и нажмите Сохранить Анкет
После того, как вы закончите выше, и нажали Сохранить Вам будет представлено список агентов. Как видите, Смит перечислен.
Нажмите на Смит , чтобы мы можем увидеть детали подключения.
Вы должны увидеть такой текст, как этот:
java -jar agent.jar -jnlpUrl http://localhost:8080/computer/smith/jenkins-agent.jnlp -secret 91af70f19b975b97eef81d42f624f1c44bl1d216b380905c9c27531d2259d823 -workDir "/home/jenkins/agent/"
Скопируйте значение из -Secret
вариант. В этом случае это 91AF70F19B975B97EEF81D42F624F1C44BL1D216B380905C9C27531D2259D823
, но ваш секрет будет другим.
В терминале теперь запустите следующую команду, заменив
<Секретный за боевиками>
к вашему секрету.<агент имени-из-за боя>
на имя вашего агента.
docker run --rm \ -eJENKINS_SECRET=\ -eJENKINS_URL=http://jenkins-controller:8080 \ -eJENKINS_AGENT_NAME= \ --network jenkins \ --init \ -it \ jenkins/inbound-agent:4.7-1
Это потянет Дженкинс/Вход-Агент
Изображение до вашей машины, а затем начните запускать ее. Все различные типы агента можно найти на Docker Hub .
URL может выглядеть немного странно здесь. Jenkins-Controller
Часть — это название контейнера, управляющего вашим контроллером Jenkins. Это важно из -за того, что мы запустили оба контейнера внутри сети.
При выполнении вышеуказанной команды не должно быть ошибок, так что теперь давайте вернемся к Дженкинсу в браузере. Теперь вы должны увидеть Смит
как агент с левой стороны.
Как видите, у нас теперь есть два исполнителя сборки: Мастер
и Смит
Анкет Мы не хотим запускать какие -либо сборки на контейнере контроллера ( Master
), поэтому давайте продолжим и остановим это.
- Нажмите на Управление Дженкинсом слева.
- Под Конфигурация системы Раздел, нажмите на Настройка системы Анкет
- Прокрутите до # исполнителей и изменить значение с 2 к 0 .
- Нажмите Сохранить Анкет
Когда Дженкинс теперь снова загружает домашнюю страницу, вы увидите только Смит
агент Теперь мы хотим запустить наш Привет, мир работа от Предыдущий пост , и посмотрите, что он будет выполняться внутри Смит
агент
- Нажмите на Привет, мир работа из списка.
- Нажмите Строить Теперь слева.
- Через несколько мгновений работа по сборке появится в истории сборки.
- Нажмите на синий мяч и снова увидите вывод «Hello World».
Что дальше
Если вы авантюрны, то следующие шаги будут:
- Определите своего собственного агента Jenkins в Dockerfile и запустите его.
- Например, получите время выполнения Go или Node.
- Используйте что -то вроде
ngrok
Чтобы выставить свою установку обратно на GitHub, чтобы получить события GitHub.
Резюме
Это был быстрый обзор для подключения агента Jenkins к приложению контроллера Jenkins.
Смотрите также
- Начало работы с Дженкинсом
- Docker знание, чтобы провести вас в течение дня
- Сравнение: AWS Codepipeline, Github Actions и Jenkins
Оригинал: «https://dev.to/benmatselby/getting-started-with-jenkins-agents-5b5e»