Поиск по сайту:

Как настроить Gitlab для непрерывной интеграции и развертывания на CentOS


На этой странице

  1. 1. Как работают непрерывная интеграция и непрерывное развертывание
  2. 2. Этап установки
  3. 3. Этап тестирования

В этом руководстве я объясню, как настроить локальный сервер Gitlab для работы CI (непрерывная интеграция)/CD (непрерывное развертывание). Как и все, кто еще этого не знает, GitLab — это полноценная платформа DevOps, поставляемая в виде единого приложения. От планирования проекта и управления исходным кодом через CI/CD до мониторинга и безопасности. Это позволяет командам сотрудничать и работать в рамках одного разговора вместо управления несколькими потоками в нескольких инструментах. Предоставляя единый репозиторий данных, пользовательский интерфейс и модель авторизации на протяжении всего жизненного цикла DevOps, команды могут значительно сотрудничать, сокращать время цикла и сосредоточиться исключительно на быстром создании каждого приложения.

По мере того как каждый бизнес-подход становится все более масштабным и комплексным, все продукты должны обладать более выдающимися характеристиками, чем их конкуренты. Для этого необходимо внедрить и разработать несколько модулей, как только они будут готовы, они должны быть быстро выведены на рынок и полностью протестированы и проверены. Таким образом, было бы действительно полезно достичь вехи, если бы Gitlab был единственным источником приложений, который мог бы облегчить процесс перехода к практике DevOps.

1. Как работают непрерывная интеграция и непрерывное развертывание

Существует логическая последовательность возможных действий на протяжении всего жизненного цикла процесса разработки программного обеспечения с использованием GitLab в качестве платформы для вашего кода. Цель состоит в том, чтобы последовательно и эффективно поддерживать команды от первого этапа внедрения нового продукта до заключительного этапа его внедрения в производство. На картинке ниже показана сводка рабочего процесса:

Поскольку область применения DevOps довольно велика, в этом руководстве основное внимание уделяется настройке сервера Gitlab в локальных условиях. Мы будем использовать Gitlab Community Edition для настройки в нашей локальной среде.

2. Этап установки

На этапе установки сначала мы начнем с настройки сервера с предварительными условиями, предполагая, что каждый сервер имеет минимальную конфигурацию сервера. Ниже приведены шаги:

 [ ~]# yum updateinstall -y curl policycoreutils-python openssh-server 

Выполнение вышеуказанного не является обязательным, просто чтобы обеспечить бесперебойную работу нашей установки и проверки. После завершения установки у вас будет скриншот, как показано ниже.

Затем запустите службу postfix по мере необходимости. Ниже приведены команды.

 [ ~]# systemctl enable postfix 

После этого у вас будет скриншот, как показано ниже.



Далее нам нужно установить wget, чтобы взять для установки скрипт автоматизации, предоставленный самим GitLab. Вы также можете использовать другой способ установки, например, с помощью Curl и т. д. В этом упражнении я буду использовать wget для загрузки скрипта. После установки пакетов wget мы загрузим отсюда скрипт и поместим его на наш локальный сервер. Ниже приведены шаги:

 [ ~]# ./script.rpm.sh 

Процесс будет таким, как показано ниже:

Далее мы начнем готовить сервис GitLab и настраивать его зависимости. Шаги, как показано ниже:

 [ ~]# yum install -y gitlab-ce 

Как только все будет сделано, вы увидите прогресс, как показано ниже.

Большой! Теперь все в руках, давайте продолжим процесс установки сервиса и его зависимостей. Поскольку GitLab был надежным приложением для совместной разработки DevOps, будет несколько пакетов и конфигурация. Поэтому это нормально, что время, необходимое для установки, будет больше, чем для любой обычной установки службы. Перед началом установки давайте подтвердим, что основной URL-адрес настроен должным образом. Ниже приведены шаги: -

 [ ~]# gitlab-ctl reconfigure 

Если прогресс идет гладко, вы получите изображение, как показано на скриншоте ниже.

Теперь, когда все сделано в части установки, давайте сделаем последний штрих, который позволит использовать порт для Gitlab. Ниже приведены шаги: -

 [ ~]# iptables -L -n 

Ниже скриншот

Теперь мы почти закончили установку GitLab, теперь мы можем начать вход на наш собственный сервер GitLab и настроить проект по мере необходимости. В качестве окончательных результатов вы можете просматривать свой сервис GitLab через браузер по URL-адресу, который мы настроили ранее, в нашем случае это http://10.124.12.133. Он автоматически перенаправит вас на главную страницу, а затем при необходимости установит ваш первоначальный пароль администратора. В этом случае пользователем-администратором по умолчанию является root. Ниже приведены примеры: -

3. Этап тестирования

Когда все будет готово, давайте действовать как пользователь в команде, которая определяет проект, использующий GitLab в качестве репозитория разработки проекта. Сначала давайте создадим новый проект, нажмите «Создать проект» и определите необходимые детали. Пример приведен ниже: -

После этого вы будете перенаправлены на главную страницу проекта, как показано ниже.

Теперь, как проект, в этот репозиторий будет внесено несколько пользователей. Чтобы воссоздать сценарий, давайте создадим пользователя, который позже будет участвовать в этом проекте. Вернитесь на главную страницу и нажмите «Добавить людей». Вы будете перенаправлены на страницу создания участника, как показано ниже. Создайте пользователя и заполните по мере необходимости.

Теперь, когда закончите, вернитесь на главную страницу проекта, перейдите в настройки и нажмите «Участники». Ниже приведены примеры: -

Это приведет вас на страницу участника проекта, включит нового пользователя, которого вы создали, и определите роли, которые нужно дать пользователю, как показано в примере ниже. Для каждого определения ролей и привилегий вы можете нажать «Подробнее» для получения более подробной информации.

После этого вы увидите список предоставленных членов команды, как показано ниже:

Теперь давайте проверим вклад рабочего процесса проекта, зайдя с другого сервера и войдя в систему как новый пользователь, которого мы создали, и создадим новый файл, который будет зафиксирован в проекте. Во-первых, давайте возьмем URL-адрес для клонирования проекта с другого сервера или рабочей станции. Вы можете взять URL-ссылку проекта из приведенного ниже примера:

Поскольку все подготовлено, давайте войдем на тестовую рабочую станцию и клонируем проект, чтобы он был доступен другому пользователю. Ниже приведены шаги: -

 [ ~]# git clone http://10.124.12.133/root/my-first-project.git 

Вам нужно будет предоставить пользователю доступ для клонирования проекта, используйте нового пользователя, созданного только что, как показано ниже:

После этого на вашей рабочей станции будет создана новая папка с названием проекта. Теперь зайдите в папку и создайте пустой файл. Это делается только для того, чтобы проверить, что проект может быть внесен любым членом команды с любой рабочей станции, и репозиторий проекта всегда будет обновляться синхронно. Ниже приведены шаги: -

 [ my-first-project]# touch myfile.txt 

Когда все сделано, давайте зафиксируем наши изменения, чтобы они синхронизировались с основным репозиторием проекта. Ниже приведены шаги: -

 [ my-first-project]# git push -u origin master 

После выполнения вышеуказанной команды процесс будет показан, как показано ниже: -

Большой! Когда все будет готово, вернемся в браузер и обновим страницу. Вы заметите, что новый файл, созданный пользователем shahril, отображается на главной странице проекта.