Как установить GitLab Community Edition (CE) 11.x на CentOS 7

С тех пор как GitHub был приобретен Microsoft, многие разработчики планировали перенести свои собственные репозитории кода с github.com в альтернативное решение для самостоятельного размещения. GitLab Community Edition (CE) является наиболее распространенным выбором. Как сложное и гибкое решение, GitLab CE может быть развернут с использованием различных методов, но здесь будет описан только официально рекомендованный метод, установка пакета Omnibus.

Предпосылки

  • Свежий экземпляр сервера Vultr CentOS 7 с минимум 4 ГБ памяти. 8 ГБ или более рекомендуется для обслуживания до 100 пользователей. Скажите, что его адрес IPv4 есть 203.0.113.1.
  • Пользователь Sudo .
  • Домен gitlab.example.com, указывающий на экземпляр, упомянутый выше.

Примечание. При развертывании на вашем собственном экземпляре сервера обязательно замените все примерные значения действительными.

Шаг 1: Выполнить основные задачи для хостинга GitLab CE

Запустите терминал SSH и войдите на свой сервер CentOS 7 как пользователь sudo.

Добавьте раздел подкачки и настройте параметр подкачки

При развертывании GitLab CE 11.x на машине с 4 ГБ памяти необходимо настроить раздел подкачки 4 ГБ для бесперебойной работы.

sudo dd if=/dev/zero of=/swapfile count=4096 bs=1M
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
echo '/swapfile   none    swap    sw    0   0' | sudo tee -a /etc/fstab
free -m

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

В целях повышения производительности системы рекомендуется настроить для параметра подкачки ядра низкое значение, например 10:

echo 'vm.swappiness=10' | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
cat /proc/sys/vm/swappiness

Вывод catкоманды будет 10.

Настройте имя компьютера и полное доменное имя (FQDN)

Используйте следующие команды для настройки имени хоста gitlabи полного доменного имени gitlab.example.comдля машины:

sudo hostnamectl set-hostname gitlab
cat <<EOF | sudo tee /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
203.0.113.1 gitlab.example.com gitlab
EOF

Вы можете подтвердить результаты:

hostname
hostname -f

Изменить правила брандмауэра

Разрешить входящий трафик HTTP и HTTPS:

sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo systemctl reload firewalld.service

Установите репозиторий EPEL YUM, а затем обновите систему

sudo yum install -y epel-release
sudo yum -y update && sudo shutdown -r now

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

Шаг 2. Установите необходимые зависимости

Перед установкой GitLab CE вам необходимо установить необходимые зависимости:

sudo yum install -y curl policycoreutils-python openssh-server openssh-clients

Кроме того, если вы хотите использовать Postfix для отправки уведомлений, вам необходимо установить Postfix и изменить правила брандмауэра следующим образом:

sudo yum install -y postfix
sudo systemctl enable postfix.service
sudo systemctl start postfix.service
sudo firewall-cmd --permanent --add-service=smtp
sudo firewall-cmd --permanent --add-service=pop3
sudo firewall-cmd --permanent --add-service=imap
sudo firewall-cmd --permanent --add-service=smtps
sudo firewall-cmd --permanent --add-service=pop3s
sudo firewall-cmd --permanent --add-service=imaps
sudo firewall-cmd --reload

После установки Postfix вам необходимо настроить Postfix, отредактировав его основной файл конфигурации /etc/postfix/main.cfв соответствии с вашими фактическими настройками сервера.

Примечание. В дополнение к вышеприведенным инструкциям необходимо отправить заявку в службу поддержки, чтобы отменить блокировку Vultr по умолчанию на SMTP-порту 25.

В качестве альтернативы, если вы хотите использовать другое решение для обмена сообщениями, просто пропустите установку Postfix и выберите использование внешнего SMTP-сервера после установки GitLab CE.

Шаг 3: Настройте репозиторий GitLab RPM, а затем установите GitLab CE

Настройте репозиторий GitLab CE RPM в своей системе:

cd
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash

Далее установите GitLab CE 11.x:

sudo EXTERNAL_URL="http://gitlab.example.com" yum install -y gitlab-ce

Установка может занять некоторое время.

Наконец, укажите ваш любимый веб-браузер http://gitlab.example.com, а затем отправьте новый пароль в ответ на приглашение завершить установку.

С этого момента используйте следующие учетные данные для входа в систему в качестве администратора:

  • Имя пользователя: root
  • Пароль: <your-new-password>

Шаг 4. Включите доступ HTTPS путем интеграции SSL-сертификата Let's Encrypt

На данный момент вы успешно установили GitLab CE 11.x на свой экземпляр сервера, и пользователи уже могут посещать сайт с использованием протокола HTTP. В целях безопасности рекомендуется включить доступ HTTPS к вашему серверу GitLab путем интеграции SSL-сертификата Let's Encrypt.

Используйте viредактор, чтобы открыть файл конфигурации GitLab CE:

sudo vi /etc/gitlab/gitlab.rb

Найдите следующие две строки:

external_url 'http://gitlab.example.com'
# letsencrypt['contact_emails'] = [] # This should be an array of email addresses to add as contacts

Замените их соответственно:

external_url 'https://gitlab.example.com'
letsencrypt['contact_emails'] = ['admin@example.com']

Сохранить и выйти:

:wq!

Выполните следующую команду, чтобы перенастроить GitLab CE с использованием обновленных настроек:

sudo gitlab-ctl reconfigure

Переконфигурация займет некоторое время.

После завершения реконфигурации все пользователи будут вынуждены использовать протокол HTTPS при доступе к сайту GitLab.

Примечание. После перехода с HTTP на HTTPS устаревшие файлы cookie могут вызвать ошибку GitLab 422. Очистка файлов cookie устраняет эту проблему.

Оставить комментарий

Изучение 26 методов анализа больших данных: часть 1

Изучение 26 методов анализа больших данных: часть 1

Изучение 26 методов анализа больших данных: часть 1

Функциональные возможности уровней эталонной архитектуры больших данных

Функциональные возможности уровней эталонной архитектуры больших данных

Прочтите блог, чтобы узнать о различных уровнях архитектуры больших данных и их функциях самым простым способом.

6 невероятных фактов о Nintendo Switch

6 невероятных фактов о Nintendo Switch

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

Технические обещания, которые все еще не выполнены

Технические обещания, которые все еще не выполнены

Вы ждете, когда технологические гиганты выполнят свои обещания? проверить, что осталось недоставленным.

Как ИИ может вывести автоматизацию процессов на новый уровень?

Как ИИ может вывести автоматизацию процессов на новый уровень?

Прочтите это, чтобы узнать, как искусственный интеллект становится популярным среди небольших компаний и как он увеличивает вероятность их роста и дает преимущество перед конкурентами.

Технологическая сингулярность: далекое будущее человеческой цивилизации?

Технологическая сингулярность: далекое будущее человеческой цивилизации?

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

CAPTCHA: как долго она может оставаться жизнеспособным методом различения между человеком и ИИ?

CAPTCHA: как долго она может оставаться жизнеспособным методом различения между человеком и ИИ?

CAPTCHA стало довольно сложно решать пользователям за последние несколько лет. Сможет ли он оставаться эффективным в обнаружении спама и ботов в ближайшем будущем?

Телемедицина и удаленное здравоохранение: будущее уже здесь

Телемедицина и удаленное здравоохранение: будущее уже здесь

Что такое телемедицина, дистанционное здравоохранение и их влияние на будущее поколение? Это хорошее место или нет в ситуации пандемии? Прочтите блог, чтобы узнать мнение!

Вы когда-нибудь задумывались, как хакеры зарабатывают деньги?

Вы когда-нибудь задумывались, как хакеры зарабатывают деньги?

Возможно, вы слышали, что хакеры зарабатывают много денег, но задумывались ли вы когда-нибудь о том, как они зарабатывают такие деньги? Давайте обсудим.

Обновление дополнения к macOS Catalina 10.15.4 вызывает больше проблем, чем решает

Обновление дополнения к macOS Catalina 10.15.4 вызывает больше проблем, чем решает

Недавно Apple выпустила macOS Catalina 10.15.4, дополнительное обновление для исправления проблем, но похоже, что это обновление вызывает больше проблем, приводящих к поломке компьютеров Mac. Прочтите эту статью, чтобы узнать больше