Что такое Дженкинс? Jenkins - это бесплатный инструмент автоматизации с открытым исходным кодом, который можно использовать для автоматизации повторяющихся технических задач с помощью непрерывной интеграции и непрерывной доставки.
В этом руководстве мы объясним, как установить Jenkins с Docker на Ubuntu 18.04 сервер. Мы также объясним, как запустить Jenkins с Docker, чтобы данные и конфигурации Jenkins были постоянными.
Требования
- Сервер под управлением Ubuntu 18.04 с минимум 2 ГБ ОЗУ.
- На вашем сервере установлен пароль root.
Начиная
Начнем обновлять репозиторий вашего сервера до последней версии. Вы можете обновить его с помощью следующей команды:
apt-get update -yapt-get upgrade -y
После обновления репозитория перезапустите сервер, чтобы применить все эти изменения.
Установить Docker
Далее вам нужно будет установить Docker на свой сервер.
Сначала загрузите и добавьте GPG-ключ Docker CE с помощью следующей команды:
wget https: // скачать.докер.com / linux / ubuntu / gpgapt-key добавить gpg
Затем добавьте репозиторий Docker CE в APT с помощью следующей команды:
нано / и т. д. / апт / источники.список.д / докер.списокДобавьте следующую строку:
deb [arch = amd64] https: // скачать.докер.com / linux / ubuntu xenial стабильныйСохраните и закройте файл, когда закончите. Затем обновите репозиторий с помощью следующей команды:
apt-get update -yПосле обновления репозитория установите Docker CE с помощью следующей команды:
apt-get install docker-ce -yПосле установки Docker CE проверьте установку Docker с помощью следующей команды:
Докер состояния systemctlСоздание тома Docker для данных и журнала
Том Docker - это метод сохранения данных и конфигурации в контейнерах Docker. Когда вы удаляете любой контейнер, данные и конфигурации по-прежнему доступны в томе Docker. Таким образом, вам нужно будет создать тома данных и журналов для резервного копирования данных и конфигураций Jenkins, включая журналы, плагины, конфигурацию плагинов и конфигурацию задания.
Начнем с создания тома для данных и журнала с помощью следующей команды:
том docker создать jenkins-dataтом docker создать jenkins-log
После создания томов вы можете вывести их список с помощью следующей команды:
объем докера lsВы должны увидеть следующий результат:
НАЗВАНИЕ ОБЪЕМА ДРАЙВЕРАместные Дженкинс-данные
местный дженкинс-лог
Установите Jenkins с Docker
Затем вам нужно будет создать файл докера для извлечения и сборки образа Jenkins с необходимыми настройками.
Вы можете создать файл докера с помощью следующей команды:
mkdir докернано докер / dockerfile
Добавьте следующие строки:
ОТ Дженкинс / ДженкинсLABEL keeper = "[адрес электронной почты защищен]"
ПОЛЬЗОВАТЕЛЬ корень
ЗАПУСК mkdir / var / log / jenkins
ЗАПУСТИТЬ mkdir / var / cache / jenkins
RUN chown -R jenkins: jenkins / var / log / jenkins
ЗАПУСТИТЬ chown -R jenkins: jenkins / var / cache / jenkins
ПОЛЬЗОВАТЕЛЬ jenkins
ENV JAVA_OPTS = "- Xmx8192m"
ENV JENKINS_OPTS = "- handlerCountMax = 300 --logfile = / var / log / jenkins / jenkins.бревно
--webroot = / var / cache / jenkins / war "
Сохраните и закройте файл, когда закончите. Затем создайте образ Jenkins с помощью следующей команды:
cd dockerdocker build -t myjenkins .
Вы должны увидеть следующий результат:
Отправка контекста сборки демону Docker 2.048кБШаг 1/10: ОТ jenkins / jenkins
---> ae831925b271
Шаг 2 из 10: LABEL keeper = "[защищенный адрес электронной почты]"
---> Запуск в 673bf1ecc3ea
Снятие промежуточного контейнера 673bf1ecc3ea
---> cad1bee88092
Шаг 3/10: ПОЛЬЗОВАТЕЛЬ корень
---> Запуск в 36909c427d44
Снятие промежуточного контейнера 36909c427d44
---> 2c381cc3a773
Шаг 4/10: ЗАПУСК mkdir / var / log / jenkins
---> Запуск в 337c0310db99
Снятие промежуточного контейнера 337c0310db99
---> 5aa93b90c67e
Шаг 5/10: ЗАПУСК mkdir / var / cache / jenkins
---> Запуск в 2c77577ae28b
Снятие промежуточного контейнера 2c77577ae28b
---> 5016430c07eb
Шаг 6/10: ЗАПУСК chown -R jenkins: jenkins / var / log / jenkins
---> Запуск в e4c820f66103
Снятие промежуточного контейнера e4c820f66103
---> c8d2830a84c5
Шаг 7/10: ЗАПУСК chown -R jenkins: jenkins / var / cache / jenkins
---> Бег в d024606146d5
Снятие промежуточного контейнера d024606146d5
---> a11d613cff18
Шаг 8/10: ПОЛЬЗОВАТЕЛЬ jenkins
---> Бег в 478f3c067131
Снятие промежуточного контейнера 478f3c067131
---> edea568d5564
Шаг 9/10: ENV JAVA_OPTS = "- Xmx8192m"
---> Запуск в 5ae52922f52b
Снятие промежуточного контейнера 5ae52922f52b
---> cb1285b1bc72
Шаг 10/10: ENV JENKINS_OPTS = "- handlerCountMax = 300 --logfile = / var / log / jenkins / jenkins.бревно
--webroot = / var / cache / jenkins / war "
---> Запуск в 973fb9257c29
Снятие промежуточного контейнера 973fb9257c29
---> b131c5adf03e
Успешно построенный b131c5adf03e
Успешно отмечены myjenkins: latest
Новый образ Jenkins с именем myjenkins был успешно построен.
Запустите контейнер Jenkins с данными и объемом журнала
Образ Jenkins теперь построен с необходимыми настройками. Затем вам нужно будет запустить контейнер Jenkins, указав тома данных и журналов в качестве точки монтирования.
Вы можете запустить контейнер Jenkins с помощью следующей команды:
docker run -p 8080: 8080 -p 50000: 50000 --name = jenkins-master --mount source = jenkins-log,цель = / var / log / jenkins --mount source = jenkins-data, target = / var / jenkins_home -d myjenkins
После запуска контейнера Jenkins вы можете проверить работающий контейнер с помощью следующей команды:
докер psВы должны увидеть следующий результат:
СОСТОЯНИЕ СОЗДАНИЯ КОМАНДЫ ОБРАЗОВАНИЯ КОНТЕЙНЕРА3dec02a7077c myjenkins "/ sbin / tini - / usr /…" 6 минут назад Вверх на 6 минут
НАЗВАНИЯ ПОРТОВ
0.0.0.0: 8080-> 8080 / TCP, 0.0.0.0: 50000-> 50000 / tcp jenkins-master
Затем вам нужно будет проверить файл журнала jenkins, все ли работает нормально или нет:
docker exec jenkins-master tail -f / var / log / дженкинс / дженкинс.бревноВы должны увидеть следующий результат:
Пожалуйста, используйте следующий пароль для перехода к установке:
b437ba21655a44cda66a75b8fbddf5b8Это также можно найти по адресу: / var / jenkins_home / secrets / initialAdminPassword
************************************************* ***********
************************************************* ***********
************************************************* ***********
Обратите внимание на указанный выше пароль, он понадобится вам во время работы мастера настройки Jenkins.
Доступ к веб-интерфейсу Jenkins
Теперь откройте свой веб-браузер и введите URL-адрес http: // ваш-сервер-ip: 8080. Вы будете перенаправлены на экран настройки Jenkins, как показано ниже:
Введите пароль администратора и нажмите Продолжать кнопка. Вы должны увидеть следующую страницу:
Теперь нажмите «Установите предлагаемые плагины”, Чтобы установить необходимые плагины. После завершения установки. Вы должны увидеть следующую страницу:
Теперь укажите свое имя пользователя администратора, пароль и полное имя, затем нажмите на Сохранить а также Заканчивать кнопка. Вы должны увидеть следующую страницу:
Теперь просто нажмите на Сохранить и закончить кнопка. После успешного завершения установки вы должны увидеть следующую страницу:
Теперь нажмите «Начать использовать Jenkins«. Вы будете перенаправлены на панель управления Jenkins, как показано на следующей странице:
Теперь нажмите «создавать новые рабочие места" кнопка. Вы должны увидеть следующую страницу:
Теперь укажите название своей вакансии и нажмите на ОК кнопка. Вы должны увидеть следующую страницу:
Теперь нажмите кнопку «Сохранить», чтобы спасти все настройки. Вы должны увидеть свои недавно созданные вакансии на следующей странице:
Тестирование постоянных данных Jenkins
Jenkins теперь установлен и настроен. Затем вам нужно будет проверить, сохраняются ли данные и журнал Jenkins после удаления контейнера Jenkins.
Для этого сначала остановите и удалите контейнер Jenkins с помощью следующей команды:
Докер Стоп Дженкинс-МастерДокер RM Дженкинс Мастер
Теперь снова запустите контейнер Jenkins с помощью следующей команды:
docker run -p 8080: 8080 -p 50000: 50000 --name = jenkins-master --mount source = jenkins-log,цель = / var / log / jenkins --mount source = jenkins-data, target = / var / jenkins_home -d myjenkins
После запуска контейнера Jenkins откройте веб-браузер и введите URL-адрес http: // ваш-сервер-ip: 8080. Вы будете перенаправлены на следующую страницу:
Теперь укажите свое имя пользователя и пароль администратора, затем нажмите на Знак в кнопка. Вы должны увидеть панель управления Jenkins на следующей странице:
Это означает, что вы сохранили все данные, журналы, конфигурацию установки и установку плагинов. Вы также должны увидеть, что ваша работа myjenkins все еще там.
ЗАКЛЮЧЕНИЕ
Теперь вы можете контейнеризовать свой процесс разработки с помощью Jenkins и Docker, наслаждайтесь.