Как установить службу Gogs Git в Ubuntu

В этом руководстве описаны все шаги, необходимые для установки Gogs self-hosted Git service на сервер Ubuntu. Проект Gogs, написанный на языке Go, нацелен на создание простого, стабильного и расширяемого сервиса Git на собственном хостинге с безболезненным процессом установки. Gogs распространяется как независимый бинарный дистрибутив и работает на всех платформах, которые поддерживает Go, включая Linux, macOS, Windows и ARM.

Gogs имеет отличную производительность и очень легкий. Он имеет очень минимальную загрузку оперативной памяти и процессора. Для начала использования сервиса достаточно VPS с 1 ядром процессора и 256 МБ оперативной памяти.

Особенности Gogs

Gogs self-hosted Git service имеет следующий набор возможностей (из Git)

  • Временная шкала активности
  • SMTP/LDAP/Reverse proxy аутентификация
  • Управление учетной записью/организацией/репозиторием
  • Git-хуки репозитория/ключи развертывания
  • SSH и HTTP/HTTPS протоколы
  • Обратный прокси с подпутями
  • Добавление/удаление коллабораторов репозитория
  • Веб-редактор для файлов репозитория и вики
  • Миграция и зеркалирование репозитория и его вики
  • Веб-крючки для репозитория/организации (включая Slack и Discord)
  • Запросы на исправление проблем репозитория, вики и защищенные ветки
  • Двухфакторная аутентификация
  • Gravatar и Federated avatar с пользовательским источником
  • Jupyter Notebook
  • Панель администрирования
  • Почтовый сервис
  • Поддержка MySQL, PostgreSQL, SQLite3, MSSQL и TiDB (через протокол MySQL)
  • Многоязыковая поддержка (29 языков)

Установка службы Gogs Git на Ubuntu

шаг 1: Установите сервер базы данных MariaDB

Для хранения данных Gogs требуется сервер MySQL.

После установки сервера базы данных войдите в консоль MySQL под пользователем root

Установите глобальные переменные ниже

Затем создайте базу данных gogs

Создайте выделенного пользователя базы данных для управления базой данных gogs.

Шаг 2: Загрузите Gogs с Github

Проверьте страницу релизов Gogs https://github.com/gogs/gogs/releases на наличие последней версии.

Распакуйте загруженный файл

Шаг 3: Настройте самораспространяющийся Git-сервис Gogs

Создайте пользователя git для запуска службы gogs

Создание пользователя git

Скопируйте служебный файл gogs systemd в каталог /etc/systemd/system

Вы можете отредактировать файл для настройки параметров:

Если у вас есть другой сервис, использующий порт 3000, вы можете установить собственный порт

Переместите содержимое каталога gogs внутрь /home/git

Смените права собственности на /home/git/ на user.git

Перезагрузите systemd и запустите службу gogs

Включите запуск службы при загрузке

Вы можете проверить статус службы, выполнив команду

systemctl status gogs

Ввод команды gogs в терминале в качестве пользователя git должен вывести страницу справки.

./gogs

Шаг 4: Настройка Gogs self-hosted Git service

Откройте URL http://serverip:3000/install, чтобы завершить установку Gogs.

 Установите аутентификацию базы данных

Введенные имя пользователя и пароль должны совпадать с указанными в разделе конфигурации базы данных. Если сервер базы данных находится на другом хосте, укажите IP-адрес в разделе Host.

Установка общих настроек приложения

Укажите URL приложения, это может быть IP-адрес маршрутизируемого сервера или доменное имя, которое разрешается в IP. То же самое должно быть задано для SSH.

Вы можете отключить саморегистрацию пользователей в разделе "Настройки сервера и других служб". Это означает, что пользователь admin будет вручную создавать учетные записи пользователей.

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

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

Если получаем ошибку

Устаналиваем GIT

Gogs

Шаг: 5 Протестируйте Git-сервис Gogs на собственном хостинге

Создайте новый репозиторий под названием test-repo

Попробуйте клонировать репозиторий

Пример вывода

Понравилась статья? Поделиться с друзьями:
Добавить комментарий