Установка
Docker compose
- Создать директорию jenkins_compose
mkdir jenkins_compose && cd jenkins_compose
- Создать compose файл
nano docker-compose.yaml
- Скопировать в файл текст, сохранить и выйти
services: jenkins: image: jenkins/jenkins:lts privileged: true user: root ports: - 8080:8080 - 50000:50000 container_name: jenkins volumes: - /home/${myname}/jenkins_compose/jenkins_configuration:/var/jenkins_home - /var/run/docker.sock:/var/run/docker.sock
- Запустить образ
docker compose up
- С данной конфигурацией по http://localhost:8080 будет находиться web интерфейс. При первом старте в консоль будет выдан ключ инициализации, который нужно скопировать в web форму.
- В директории jenkins_compose создаем ключи
ssh-keygen -t rsa -f jenkins_agent
- Перейти в Настроить Jenkins - Credentials
- Перейти в системное хранилище - глобальные параметры
- Добавить способ авторизации со следующими настройками (ключ ввести вручную)
- Теперь добавить в compose файл образ агента с открытым ключом
services: jenkins: image: jenkins/jenkins:lts privileged: true user: root ports: - 8080:8080 - 50000:50000 container_name: jenkins volumes: - /home/${myname}/jenkins_compose/jenkins_configuration:/var/jenkins_home - /var/run/docker.sock:/var/run/docker.sock agent: image: jenkins/ssh-agent privileged: true user: root container_name: agent expose: - 22 environment: - JENKINS_AGENT_SSH_PUBKEY=ssh-rsa...
- Почти все прошло по инструкции, кроме путей java и версии java. Второе было исправлено в compose (сейчас актуальная версия). А для установки корректного пути к JAVA нужно было найти в контейнере путь java
sergey@sergey-VirtualBox:~$ docker exec -it 2b5036c4a35b /bin/bash root@2b5036c4a35b:/home/jenkins# env | grep JAVA JAVA_HOME=/opt/java/openjdk
И установить следующий путь в настройках агента:
- Агент поднялся!