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.