AstraLinux - установка и запуск GitFlic

Описание и установка из архива

Скачайте последнюю версию GitFlic self-hosted. Содержимое архива:

  • ./gitflic.jar - исполняемый файл.
  • /default-config/application.properties - файл конфигурации приложения.

Если вы разворачиваете gitflic на удаленном сервере, то вам нужно:

# Скопировать архив на удаленный сервер:
scp ~/Downloads/gitflic_*.zip <username>@<ip>:~/
# Установить unzip:
sudo apt install unzip
# Распаковать архив на сервере gitflic:
sudo unzip gitflic_*.zip

Рекомендуемые системные требования

Параметр Рекомендации
CPU 2 ядра Ice Lake
RAM 4 Гб
HDD Зависит от объёма ваших репозиториев. От 25 Гб

Требования к ПО (в скобках указаны версии в AstraLinux 1.7.x):

  • Java 11 (openjdk 11.0.18)
  • Redis 6.2 (redis-server 7.0.10)
  • PostgreSQL 11/12 (psql 11.17)
  • Опционально (для self-hosted enterprise): RabbitMQ 3.12 (rabbitmqadmin 3.8.2)

Общее обновление компонентов

Проверяем /etc/apt/sources.list - нужно закомментировать репозитории cdrom и раскомментировать онлайн-репозитории.

# deb cdrom:[OS Astra Linux 1.7.4 1.7_x86-64 DVD ]/ 1.7_x86-64 contrib main non-free
# deb cdrom:[OS Astra Linux 1.7.4 1.7_x86-64 DVD ]/ 1.7_x86-64 contrib main non-free

deb https://download.astralinux.ru/astra/stable/1.7_x86-64/repository-main/ 1.7_x86-64 main contrib non-free
deb https://download.astralinux.ru/astra/stable/1.7_x86-64/repository-update/ 1.7_x86-64 main contrib non-free

deb https://download.astralinux.ru/astra/stable/1.7_x86-64/repository-base/ 1.7_x86-64 main contrib non-free
#deb https://download.astralinux.ru/astra/stable/1.7_x86-64/repository-extended/ 1.7_x86-64 main contrib non-free

* repository-extended - Не обязателен для установки и запуска приложения Gitflic.

  • Обновить список пакетов:
sudo apt update
# Опционально: установить актуальные обновления
sudo apt dist-upgrade

Инструкции по установке на сайте AstraLinux

Установка Java 11

Инструкция по установке на сайте AstraLinux

  • Проверить доступные версии OpenJDK:
apt policy openjdk-11-jdk
  • Установить пакет:
sudo apt install openjdk-11-jdk
  • Проверка установленной версии:
java --version

Установка PostgreSQL

Инструкция по установке на сайте AstraLinux

  • Проверить доступные версии OpenJDK:
apt policy postgresql-11
  • Установить пакет:
sudo apt install postgresql-11
  • Проверка установленной версии:
psql --version
  • Проверка запущенной службы:
sudo systemctl status postgresql

Конфигурация PostgreSQL

  • Установить параметр zero_if_notfound в yes в файле etc/parsec/mswitch.conf и перезапустить службы
sudo systemctl daemon-reload

❗️Данный параметр позволит устанавливать нулевой уровень доступа для всех пользователей с неопределенными правами

  • Подключение к консоли psql:
sudo -u postgres psql
  • Создание пользователя с паролем, БД с указанным владельцем, выход:
CREATE USER gitflic WITH PASSWORD 'gitflic';
CREATE DATABASE gitflic WITH OWNER gitflic;
\q
  • Вход в созданную базу данных gitflic:
sudo -u postgres psql -d gitflic
  • Загрузка расширения pgcrypto для базы gitflic (обязательно):
CREATE EXTENSION pgcrypto;
  • Перезагрузка сервера БД для принятия изменений:
service postgresql restart

Установка Redis

  • Установка пакета:
sudo apt install redis
  • Проверка версии Redis:
redis-server --version
  • Состояние сервиса:
sudo systemctl status redis
  • Проверить доступность redis с помощью команды (должно вернуться PONG)
redis-cli ping

Установка RabbitMQ (опционально)

Данное ПО устанавливается для платной версии self-hosted enterprise. RabbitMQ - это распределённый и горизонтально масштабируемый брокер сообщений, является одним из самых популярных средств для обмена данными между сервисами. Благодаря использованию RabbitMQ увеличиваются отказоустойчивость и количество обрабатываемых сообщений в GitFlic.

sudo apt install rabbitmq-server

После установки RabbitMQ сам запускается и добавляется в автозагрузку. Проверка статуса службы:

sudo systemctl status rabbitmq-server.service 

Установите Gitflic согласно инструкции:

Установка приложения GitFlic


Сконфигурируйте SSH port согласно инструкции:

Конфигурация SSH порта


Сконфигурируйте и запустите Gitflic согласно инструкции:

Конфигурирование и запуск приложения GitFlic


❗️Возможные проблемы

psql: error obtaining MAC configuration for user... 

Ошибка означает что БД не может верно определить метку безопасности пользователя.

Для устранения необходимо проверить есть ли у пользователя который запускает СУБД (postgres по умолчанию) необходимые права на чтение и исполнение необходимых директорий

sudo getfacl /etc/parsec/macdb/
sudo getfacl /etc/parsec/capdb/

Запись в выводе user:postgres:r-x

Если данной записи в выводе нет, необходимо задать необходимые права

sudo setfacl -R -m u:postgres:rx /etc/parsec/capdb
sudo setfacl -R -m u:postgres:rx /etc/parsec/macdb

Проверить результат перезапуском приложения.

Если ошибка осталась

Установите валидные уровни конфиденциальности для пользователя согласно официальной инструкции