Как настроить CI/CD пайплайн с Git и Jenkins: Пошаговое руководство для начинающих

На список статей
Blog image

Защитите свои сайты с My-Sites-Guard.com!
Сервис обеспечивает надежную защиту ваших веб-ресурсов: мониторинг доступности сайта, контроль валидности сертификатов, а также возможность собирать и анализировать логи работы сервера. My-Sites-Guard.com — всё для сохранности вашего сайта и спокойствия в работе!

Введение

CI/CD (Continuous Integration / Continuous Deployment) — это практика, позволяющая автоматизировать процесс разработки и доставки программного обеспечения. Git используется для контроля версий, а Jenkins помогает автоматизировать задачи сборки, тестирования и развёртывания. В этой статье мы разберёмся, как связать Git и Jenkins для создания пайплайна, который ускорит и упростит ваш процесс разработки.

Шаг 1: Подготовка к настройке

  1. Установите Git
    Убедитесь, что на вашем сервере установлена последняя версия Git. Если у вас её нет, установите её командой:sudo apt update
    sudo apt install git
  2. Установите Jenkins
    Скачайте и установите Jenkins на вашем сервере. Например, на Ubuntu это можно сделать так:wget -q -O - https://pkg.jenkins.io/debian/jenkins.io.key | sudo apt-key add -
    sudo sh -c 'echo deb http://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'
    sudo apt update
    sudo apt install jenkins

Шаг 2: Настройка Jenkins

  1. Запуск Jenkins
    После установки, запустите Jenkins командой:sudo systemctl start jenkins
  2. Доступ к Jenkins Dashboard
    В браузере откройте http://<ваш_сервер>:8080, чтобы войти в Jenkins. Во время первого входа вам будет предложено ввести административный пароль, который можно найти в файле /var/lib/jenkins/secrets/initialAdminPassword.
  3. Создание пользователя
    Следуйте инструкциям для создания нового пользователя и установки рекомендованных плагинов.

Шаг 3: Интеграция с Git

  1. Настройка репозитория Git
    Определите, с каким репозиторием Git вы хотите работать. Важно, чтобы Jenkins имел доступ к этому репозиторию (например, используя SSH-ключи или доступ через HTTPS).
  2. Добавление проекта в Jenkins
    В Jenkins перейдите в раздел "New Item" и создайте новый проект, выбрав Freestyle Project (или Pipeline, если вы используете кодовый подход для пайплайна).
  3. Подключение репозитория Git к Jenkins
    В настройках проекта укажите URL репозитория и, если требуется, добавьте учетные данные для доступа.

Шаг 4: Создание CI/CD пайплайна

  1. Настройка триггеров для сборки
    В разделе "Build Triggers" укажите, что сборка должна запускаться автоматически, например, при каждом коммите в репозиторий. Это можно сделать с помощью параметра "Poll SCM" (опрос репозитория) или с использованием вебхуков.
  2. Добавление шагов сборки и тестирования
    В разделе "Build" укажите команды для сборки и тестирования приложения. Например, если у вас проект на Java и Maven, команда будет выглядеть так:mvn clean install
  3. Настройка развертывания (CD)
    Чтобы добавить этап развертывания, используйте плагины, такие как SSH или FTP, для отправки собранного артефакта на сервер. Если у вас контейнеризированное приложение, настройте Jenkins для выполнения команд Docker для развертывания образа.

Шаг 5: Использование Jenkins Pipeline (Кодовый подход)

  1. Создание файла Jenkinsfile
    В корне проекта создайте файл Jenkinsfile, в котором будет описана логика пайплайна. Пример простого пайплайна:pipeline {
       agent any
       stages {
           stage('Checkout') {
               steps {
                   git 'https://github.com/your-repository-url.git'
               }
           }
           stage('Build') {
               steps {
                   sh 'mvn clean install'
               }
           }
           stage('Test') {
               steps {
                   sh 'mvn test'
               }
           }
           stage('Deploy') {
               steps {
                   sh 'scp target/your-app.jar user@server:/path/to/deploy'
               }
           }
       }
    }
  2. Добавление Jenkinsfile в проект
    После создания файла Jenkinsfile закоммитьте его в репозиторий. Это позволит Jenkins автоматически распознать его и использовать для сборок.
  3. Запуск пайплайна
    Вернитесь в Jenkins и запустите сборку. Jenkins прочитает Jenkinsfile и выполнит указанные шаги.

Шаг 6: Мониторинг и управление пайплайном

  1. Просмотр журналов сборки
    В интерфейсе Jenkins вы можете наблюдать за процессом сборки и развертывания, отслеживать ошибки и смотреть логи.
  2. Настройка уведомлений
    Для удобства настройте уведомления через email или мессенджеры (например, Slack), чтобы получать оповещения о статусе сборок.

Заключение

Теперь ваш CI/CD пайплайн настроен и готов к использованию. С помощью Git и Jenkins вы автоматизировали задачи интеграции и развёртывания, что ускоряет процесс разработки, повышает надёжность и минимизирует вероятность ошибок.

Комментарии

Пока нет комментариев

Добавить комментарий