Добавлен: 10.01.2024
Просмотров: 40
Скачиваний: 4
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Министерство образования и науки Российской Федерации
Федеральное государственное автономное образовательное учреждение высшего
профессионального образования
«Уральский Федеральный Университет имени первого Президента России Б.Н.
Ельцина»
Цифровая кафедра
Отчёт по лабораторной работе №7
Вариант 3. «Установка веб-инструмента Gitlab на Linux Ubuntu»
Студентка Нюкина Н.А.
Группа РИ-300013
Дата 03.04.2023
Екатеринбург 2023
Оглавление
ВВЕДЕНИЕ ..................................................................................................................................................... 3
ХОД РАБОТЫ ................................................................................................................................................ 4
Подготовка сервера ...................................................................................................................................... 4
Установка GitLab ......................................................................................................................................... 5
Настройка GitLab ......................................................................................................................................... 8
ЗАКЛЮЧЕНИЕ ............................................................................................................................................ 13
ВВЕДЕНИЕ
Цель – изучить методы работы с сервисом GitLab.
Задачи:
- подготовить сервер;
- установить GitLab;
- настроить GitLab.
ХОД РАБОТЫ
Подготовка сервера
В качестве предварительный настроек, мы обновим список пакетов в репозиториях, настроим правильное время и откроем порты в брандмауэре.
Обновление списков пакетов (Рисунок 1):
Рисунок 1 – Обновление пакетов
Обновляем установленные пакеты (Рисунок 2):
Рисунок 2 – Обновление установленных пакетов
Настраиваем часовой пояс (Рисунок 3):
Рисунок 3 – Настройка часового пояса
Для автоматической синхронизации времени ставим пакет chrony(Рисунок 4):
Рисунок 4 – Установка пакета chrony
Разрешаем автозапуск сервиса chrony (Рисунок 5):
Рисунок 5 – Автозапуск chrony
По умолчанию, в Ubuntu брандмауэр настроен на то, чтобы принимать любые пакеты. Но если у нас он настроен на блокировку, нужно добавить порты
80 и 443 с помощью следующий команд: iptables -I INPUT -p tcp --dport 80 -j ACCEPT iptables -I INPUT -p tcp --dport 443 -j ACCEPT
И чтобы сохранить правила, устанавливаем iptables-persistent (Рисунок 6):
Рисунок 6 – Установка iptables-persistent
И выполняем следующую команду: netfilter-persistent save
Результат выполнения команды (Рисунок 7):
Рисунок 7 – netfilter-persistent
Установка GitLab
Устанавливаем необходимые компоненты (Рисунок 8):
Рисунок 8 – Установка необходимых компонентов
Для отправки уведомлений, установим также postfix с помощью следующей команды: sudo apt install postfix
При запросе типа конфигурации, выбираем Internet Site (если уведомления должны отправляться наружу) или Local only (уведомления в пределах сервера).
Установим репозиторий GitLab с помощью следующей команды: curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
Результат выполнения команды (Рисунок 9):
Рисунок 9 – Скачивание репозитория GitLab
Устанавливаем Gitlab с помощью следующей команды: sudo apt install gitlab-ce
Результат выполнения команды (Рисунок 10):
Рисунок 10 – Установка GitLab
Для запуска и корректной работы портала мы должны задать external_url. Для этого открываем файл: nano /etc/gitlab/gitlab.rb
Изменяем параметр external_url (Рисунок 11):
Рисунок 11 – Редактирование файла /etc/gitlab/gitlab.rb
Выполняем конфигурирование с помощью следующей команды: gitlab-ctl reconfigure
Смотрим пароль, который был назначен пользователю после установки в файле /etc/gitlab/initial_root_password с помощью следующей команды: cat /etc/gitlab/initial_root_password | grep Password:
Открываем браузер и вводим наш адрес, который мы указали в настройках в опции external_url —http://gitlab.site.ru. Мы должны увидеть страницу авторизации, на которой нас запросят пароль для администратора. Входим в качестве пользователя root с паролем, который посмотрели в файле (Рисунок 12):
Рисунок 12 – Вход в GitLab
Настройка GitLab
По умолчанию, портал устанавливается с интерфейсом на английском. Для смены языка, кликаем по иконке в правом верхнем углу и выбираем Preferences
(Рисунок 13):
Рисунок 13 – Открытие настроек
В подразделе Localization выбираем нужный нам язык и первый день недели
(Рисунок 14):
Рисунок 14 – Настройка языка
Сохраняем настройки и перезапускаем страницу для применения нового языка.
Попробуем создать проект и подключиться к нему из Linux. Также для теста мы создадим файл и закинем его в наш репозиторий.
В веб-интерфейсе GitLab создаем новый проект (Рисунок 15):
Рисунок 15 – Создание и настройка нового проекта
Для примера попробуем подключиться с компьютера Linux к нашему репозиторию и закинуть на него тестовый файл.
Для начала установим git на компьютер с Linux (Рисунок 16):
Рисунок 16 – Установка git
Создаем папку для тестового проекта (Рисунок 17):
Рисунок 17 – Создание папки для тестового проекта
Переходим в нее с помощью следующей команды: cd /projects/test
Создаем репозиторий (Рисунок 18):
Рисунок 18 – Создание репозитория
Создаем файл (Рисунок 19):
Рисунок 19 – Создание файла
Добавляем все файлы в индекс (Рисунок 20):
Рисунок 20 – Добавление файла в индекс
Делаем коммит с помощью следующей команды: git commit -m "Commit 1" -a
Подключаемся к созданному репозиторию с помощью следующей команды: git remote add origin http://gitlab.com/nukinanada/new_project
Заливаем в него закоммиченный файл с помощью следующей команды:
git push origin master
Переходим на веб-страницу нашего проекта — мы должны увидеть наш файл
(Рисунок 21):
Рисунок 21 – Созданный файл
Настройка SSL
В данном примере мы сконфигурируем наш сервер для возможности работы по https и получения сертификата от Let's Encrypt. Все настройки выполняются в конфигурационном файле. Открываем его (Рисунок 22):
Рисунок 22 – Открытие конфигурационного файла
Вносим изменения в файл (Рисунок 23):
Рисунок 23 – Изменения конфигурационного файла
Также настраиваем получение сертификата от Let's Encrypt (Рисунок 24):
Рисунок 24 – Настройка получения сертификата от Let's Encrypt
Также задаем следующие настройка (Рисунок 25):
Рисунок 25 – Настройка конфигурации
Создаем вышеуказанный каталог (Рисунок 26):
Переходим на веб-страницу нашего проекта — мы должны увидеть наш файл
(Рисунок 21):
Рисунок 21 – Созданный файл
Настройка SSL
В данном примере мы сконфигурируем наш сервер для возможности работы по https и получения сертификата от Let's Encrypt. Все настройки выполняются в конфигурационном файле. Открываем его (Рисунок 22):
Рисунок 22 – Открытие конфигурационного файла
Вносим изменения в файл (Рисунок 23):
Рисунок 23 – Изменения конфигурационного файла
Также настраиваем получение сертификата от Let's Encrypt (Рисунок 24):
Рисунок 24 – Настройка получения сертификата от Let's Encrypt
Также задаем следующие настройка (Рисунок 25):
Рисунок 25 – Настройка конфигурации
Создаем вышеуказанный каталог (Рисунок 26):
Рисунок 26 – Создание каталога /etc/gitlab/ssl
Применяем новую конфигурацию с помощью следующей команды: sudo gitlab-ctl reconfigure
Конфигурация применена успешно (Рисунок 27):
Рисунок 27 – Результаты конфигурации
Если мы забыли пароль для пользователя root, можно его сбросить через командную строку.
Подключаемся к консоли управления gitlab с помощью команды: gitlab-rails console -e production
Создаем переменную, которая будет вести на ссылку с учетной записью root
(идентификатор 1): user = User.where(id: 1).first
Задаем пароль для пользователя root дважды: user.password = 'password123' user.password_confirmation = 'password123'
Сохраняем изменения для пользователя: user.save!
Готово.
ЗАКЛЮЧЕНИЕ
В ходе лабораторной работы мною был изучен процесс работы с сервисом
GitLab.