Як встановити Gitea на Fedora

Gitea – це легка служба Git з відкритим вихідним кодом, яка надає зручний інтерфейс для управління репозиторіями, спільної роботи з членами команди та оптимізації робочого процесу розробки. Завдяки низьким вимогам до ресурсів і простому процесу інсталяції Gitea є ідеальним рішенням для приватних осіб та організацій, які бажають створити власну платформу для хостингу Git.

Попередні умови

Перш ніж ми почнемо процес інсталяції, переконайтеся, що у вас є такі попередні умови:

  • Сервер під управлінням однієї з таких операційних систем: Fedora 40.
  • Рекомендується використовувати свіжу інсталяцію ОС, щоб запобігти можливим проблемам.
  • Для виконання команд вам знадобиться доступ до терміналу. У Fedora 40 для цієї мети передбачено додаток Terminal. Його можна знайти в меню «Додатки».
  • Стабільне інтернет-з’єднання для завантаження необхідних пакетів.
  • Некореневий користувач sudo або доступ до кореневого користувача. Ми рекомендуємо використовувати не root-користувача sudo, оскільки при необережному поводженні з правами root ви можете пошкодити систему.

Встановлення Gitea на Fedora 40

Крок 1. Оновіть систему.

Щоб забезпечити безпроблемне встановлення і звести до мінімуму можливі проблеми, дуже важливо оновити систему Fedora 40 до останньої стабільної версії. Відкрийте термінал і виконайте таку команду:

sudo dnf clean all
sudo dnf update

Ця команда знайде та встановить усі доступні оновлення для пакетів вашої системи, забезпечивши вас найостаннішими виправленнями помилок, виправленнями безпеки та поліпшеннями продуктивності.

Крок 2. Встановлення залежностей.

Для правильної роботи Gitea потрібно кілька залежностей. Встановіть необхідні пакети, виконавши таку команду:

sudo dnf install git wget curl

Ця команда встановить Git, wget і curl на вашу систему. Git необхідний для контролю версій і управління репозиторіями, а wget і curl – корисні інструменти для завантаження файлів і виконання HTTP-запитів.

Крок 3. Встановлення Gitea на Fedora 40.

Спочатку відвідайте офіційний сайт Gitea і перейдіть на сторінку завантажень. Знайдіть останній бінарний реліз Linux x86-64 і скопіюйте посилання на завантаження:

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

Зробіть завантажений двійковий файл виконуваним:

chmod +x gitea

Перемістіть двійковий файл Gitea в глобальний шлях для полегшення доступу:

sudo mv gitea /usr/local/bin/gitea

Крок 4. Створіть системного користувача для Gitea.

Щоб підвищити безпеку та ізолювати процеси Gitea, створіть спеціального системного користувача та групу для Gitea:

sudo adduser --system --shell /bin/bash --group --disabled-password --home /home/gitea gitea

Ця команда створює нового користувача з ім’ям «gitea» і домашнім каталогом «/home/gitea». Користувач налаштований як системний обліковий запис із вимкненим паролем і оболонкою за замовчуванням «/bin/bash».

Крок 5. Налаштуйте каталоги Gitea.

Створіть необхідні каталоги для Gitea і встановіть відповідні права власності та дозволи:

sudo mkdir -p /var/lib/gitea/{custom,data,log}

Встановіть права власності на каталоги для користувача та групи «gitea»:

sudo chown -R gitea:gitea /var/lib/gitea

Встановіть відповідні дозволи для каталогів:

sudo chmod -R 750 /var/lib/gitea

Створіть каталог для файлу конфігурації Gitea:

sudo mkdir /etc/gitea

Встановіть права власності та дозволи для каталогу конфігурації:

sudo chown root:gitea /etc/gitea
sudo chmod 770 /etc/gitea

Ці кроки гарантують, що Gitea має необхідні каталоги та дозволи для безпечного зберігання даних, журналів і конфігураційних файлів.

Крок 6. Створіть файл служби Systemd.

Щоб керувати Gitea як системною службою, створіть файл служби systemd:

sudo nano /etc/systemd/system/gitea.service

Додайте у файл такий вміст:

[Unit]
Description=Gitea (Git with a cup of tea)
After=syslog.target
After=network.target

[Service]
RestartSec=2s
Type=simple
User=gitea
Group=gitea
WorkingDirectory=/var/lib/gitea/
ExecStart=/usr/local/bin/gitea web -c /etc/gitea/app.ini
Restart=always
Environment=USER=gitea HOME=/home/gitea GITEA_WORK_DIR=/var/lib/gitea

[Install]
WantedBy=multi-user.target

Збережіть файл і вийдіть із текстового редактора.

Щоб запустити Gitea і забезпечити її автоматичний запуск під час старту системи, виконайте такі команди:

sudo systemctl daemon-reload

Увімкніть автоматичний запуск служби Gitea під час завантаження:

sudo systemctl enable gitea

Запустіть службу Gitea:

sudo systemctl start gitea

Переконайтеся, що служба Gitea працює правильно:

sudo systemctl status gitea

Крок 7. Налаштуйте Nginx як зворотний проксі.

Щоб отримати доступ до Gitea через веб-сервер, налаштуйте Nginx як зворотний проксі:

sudo dnf install nginx

Створіть новий файл конфігурації Nginx для Gitea:

sudo nano /etc/nginx/conf.d/gitea.conf

Додайте у файл такий вміст:

server {
    listen 80;
    server_name example.com;

    location / {
        proxy_pass http://localhost:3000;
        include /etc/nginx/proxy_params;
    }
}

Збережіть файл і вийдіть із текстового редактора, а потім перевірте конфігурацію Nginx на наявність синтаксичних помилок:

nginx -t

Перезавантажте Nginx, щоб застосувати зміни:

sudo systemctl reload nginx

Крок 8. Налаштуйте брандмауер.

Щоб дозволити доступ до Gitea через брандмауер, відкрийте необхідні порти:

sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https

Перезавантажте брандмауер, щоб застосувати зміни:

sudo firewall-cmd --reload

Крок 9. Доступ до веб-інтерфейсу Gitea.

Відкрийте веб-браузер і перейдіть до вашого екземпляра Gitea, використовуючи доменне ім’я або IP-адресу сервера (наприклад, http://example.com).

Перед вами відкриється сторінка встановлення Gitea. Заповніть необхідну інформацію, наприклад налаштування бази даних, дані облікового запису адміністратора та шлях до кореня репозиторію.

Вітаємо! Ви успішно встановили Gitea. Для отримання додаткової або корисної інформації ми рекомендуємо вам відвідати офіційний сайт Gitea.

Поділіться своєю любов'ю

Залишити відповідь

0 комментариев
Вбудовані Відгуки
Переглянути всі коментарі
0
Ми любимо ваші думки, будь ласка, прокоментуйте.x