В этом уроке мы покажем вам, как установить Gitea на Ubuntu 24.04 LTS. Gitea — это мощная самостоятельная служба Git с открытым исходным кодом, которая предоставляет удобный интерфейс для управления репозиториями, совместной работы с членами команды и оптимизации рабочего процесса разработки. Благодаря легкому дизайну и кроссплатформенной совместимости Gitea является отличным выбором для частных лиц и организаций, желающих разместить свой собственный сервис Git без сложностей и затрат ресурсов, как у других решений.

В этой статье предполагается, что у вас есть хотя бы базовые знания Linux, вы умеете использовать оболочку и, самое главное, размещаете свой сайт на собственном VPS. Установка довольно проста и предполагает, что вы работаете под учетной записью root, в противном случае вам может потребоваться добавить ‘sudo‘ к командам для получения root-прав. Я покажу вам пошаговую установку Gitea на Ubuntu 24.04 (Noble Numbat). Вы можете следовать тем же инструкциям для Ubuntu 22.04 и любого другого дистрибутива на основе Debian, такого как Linux Mint, Elementary OS, Pop!_OS и других.

Предварительные условия

  • Сервер под управлением одной из следующих операционных систем: Ubuntu и любого другого дистрибутива на основе Debian, например Linux Mint.
  • Рекомендуется использовать новую установку ОС, чтобы предотвратить любые потенциальные проблемы.
  • Доступ к серверу по SSH (или просто откройте терминал, если вы находитесь на рабочем столе).
  • Активное подключение к Интернету. Вам понадобится подключение к Интернету, чтобы загрузить необходимые пакеты и зависимости.
  • Система Ubuntu 24.04 с root-доступом или пользователь с привилегиями sudo.

Установите Gitea на Ubuntu 24.04 LTS Noble Numbat

Шаг 1. Обновление репозитория пакетов.

Сначала обновите и обновите все системные пакеты до последних версий. Это гарантирует, что у вас будут самые последние обновления безопасности и версии программного обеспечения.

sudo apt update
sudo apt upgrade

Эти команды обновят списки пакетов и обновят все установленные пакеты до последних версий.

Шаг 2. Установка пакетов зависимостей.

Чтобы установить необходимые пакеты, выполните следующие команды:

sudo apt update
sudo apt install git sqlite3 nginx

Проверьте установку Git, проверив его версию:

git --version

Шаг 3. Создайте выделенного пользователя Git.

Чтобы повысить безопасность и изолировать Gitea от других системных процессов, создайте выделенного пользователя для запуска Gitea:

sudo adduser --system --shell /bin/bash --gecos 'Git Version Control' --group --disabled-password --home /home/git git

Эта команда создает нового пользователя с именем «git» с домашним каталогом по адресу /home/gitпринадлежащий к группе, также называемой «git«. Пользователь задается как системная учетная запись без пароля и использует /bin/bash в качестве оболочки по умолчанию.

Шаг 4. Установка Gitea в Ubuntu 24.04.

Посетите официальный сайт Gitea и скачать последнюю бинарную версию подходит для вашей системной архитектуры. В этом руководстве мы будем использовать gitea-1.22.0-linux-amd64 двоичный:

wget https://dl.gitea.com/gitea/1.22.0/gitea-1.22.0-linux-amd64

Далее создайте необходимые каталоги для Gitea и установите соответствующие разрешения:

sudo mkdir -p /var/lib/gitea/{custom,data,log}
sudo chown -R git:git /var/lib/gitea/
sudo chmod -R 750 /var/lib/gitea/
sudo mkdir /etc/gitea
sudo chown root:git /etc/gitea
sudo chmod 770 /etc/gitea

Эти команды создают необходимую структуру каталогов для Gitea, назначают право собственности пользователю и группе «git» и устанавливают соответствующие разрешения для каждого каталога.

Шаг 5. Настройте Gitea.

Чтобы настроить Gitea, вы можете использовать веб-установщик или вручную отредактировать файл конфигурации. В этом руководстве мы будем использовать ручной метод. Создайте новый файл конфигурации с именем app.ini в /etc/gitea каталог:

sudo nano /etc/gitea/app.ini

Добавьте в файл следующее содержимое, при необходимости изменив значения:

[database]
DB_TYPE = sqlite3
PATH = /var/lib/gitea/data/gitea.db

[repository]
ROOT = /var/lib/gitea/data/repositories

[server]
APP_DATA_PATH = /var/lib/gitea/data
DOMAIN = your-domain.com
SSH_DOMAIN = your-domain.com
HTTP_PORT = 3000
ROOT_URL = https://your-domain.com/
DISABLE_SSH = false
SSH_PORT = 22
SSH_LISTEN_PORT = 22
LFS_START_SERVER = true

[mailer]
ENABLED = false

[service]
REGISTER_EMAIL_CONFIRM = false
ENABLE_NOTIFY_MAIL = false
DISABLE_REGISTRATION = false
ENABLE_CAPTCHA = true
REQUIRE_SIGNIN_VIEW = false

[picture]
DISABLE_GRAVATAR = false

[session]
PROVIDER = file

[log]
MODE = file
LEVEL = info
ROOT_PATH = /var/lib/gitea/log

Сохраните файл и выйдите из редактора, затем перезагрузите файл. systemd конфигурации, включите запуск службы Gitea при загрузке и запустите службу:

sudo systemctl daemon-reload
sudo systemctl enable gitea
sudo systemctl start gitea

Убедитесь, что служба Gitea запущена:

sudo systemctl status gitea

Если все настроено правильно, вы должны увидеть вывод, указывающий, что служба Gitea активна и работает.

Шаг 6. Настройте Nginx в качестве обратного прокси.

Чтобы получить доступ к Gitea с использованием вашего доменного имени и включить SSL/TLS, настройте Nginx в качестве обратного прокси-сервера. Создайте новый файл конфигурации Nginx для Gitea:

sudo nano /etc/nginx/sites-available/gitea

Добавьте в файл следующее содержимое, заменив your-domain.com своим фактическим доменным именем:

server {
    listen 80;
    server_name your-domain.com;

    location / {
        proxy_pass http://localhost:3000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

Сохраните файл и выйдите из редактора, затем включите конфигурацию Nginx, создав символическую ссылку:

sudo ln -s /etc/nginx/sites-available/gitea /etc/nginx/sites-enabled/

Проверьте конфигурацию Nginx на наличие синтаксических ошибок:

sudo nginx -t

Если об ошибках не сообщается, перезапустите Nginx, чтобы применить изменения:

sudo systemctl restart nginx

Шаг 7. Защитите Gitea с помощью SSL/TLS.

Чтобы защитить установку Gitea с помощью сертификатов SSL/TLS, установите Certbot и получите сертификат Let’s Encrypt:

sudo apt install certbot python3-certbot-nginx

Запустите Certbot, чтобы получить и настроить сертификат SSL/TLS для вашего домена:

sudo certbot --nginx -d your-domain.com

Следуйте инструкциям, чтобы указать адрес электронной почты и согласиться с условиями обслуживания Let’s Encrypt. Выберите, перенаправлять ли HTTP-трафик на HTTPS при появлении соответствующего запроса.

Шаг 8. Откройте веб-интерфейс Gitea.

Откройте веб-браузер и перейдите к своему доменному имени (например, https://your-domain.com). Вас должна встретить страница установки Gitea.

Установите Gitea на Ubuntu 24.04 LTS Noble Numbat

Заполните необходимую информацию, например настройки базы данных (которые должны быть предварительно заполнены в зависимости от вашего app.ini конфигурация), данные учетной записи администратора и любые другие соответствующие настройки.