Linux

Как да инсталирам Gitea на Ubuntu 20.04

Как да инсталирам Gitea на Ubuntu 20.04

Gitea е бърз и лесен за използване самостоятелно хостван git сървър, написан в Go. Включва редактор на файлове на хранилище, проследяване на проблеми с проекти, управление на потребители, известия, вградена wiki и много други.

Gitea е леко приложение и може да се инсталира на системи с ниска мощност. Ако търсите алтернатива на Gitlab с много по-малък отпечатък на паметта и не ви трябват всички камбани, които Gitlab предлага, тогава трябва да опитате с Gitea.

Тази статия обяснява как да инсталирате и конфигурирате Gitea на Ubuntu 20.04.

Предпоставки #

Gitea поддържа SQLite, PostgreSQL и MySQL / MariaDB като бекенд на базата данни.

SQLite се препоръчва само за малки инсталации. По-големите инсталации трябва да използват MySQL или PostgreSQL.

Ще използваме SQLite като база данни за Gitea. Ако SQLite не е инсталиран на вашата система Ubuntu, инсталирайте го, като въведете следните команди като sudo потребител:

sudo apt актуализацияsudo apt инсталира sqlite3

Инсталиране на Gitea #

Gitea предоставя изображения на Docker и може да се инсталира от източник, двоичен файл и като пакет. Ще инсталираме Gitea от двоичен файл.

Инсталирайте Git #

Първата стъпка е да инсталирате Git на вашия сървър:

sudo apt актуализацияsudo apt инсталирайте git

Проверете инсталацията, като покажете версията на Git:

git --версия
git версия 2.25.1 

Създайте потребител на Git

Създайте нов системен потребител, който ще стартира приложението Gitea, като напишете:

sudo adduser \ --система \ --shell / bin / bash \ --gecos 'Контрол на версиите на Git' \ --група \ --деактивирана парола \ --home / home / git \ git

Командата по-горе създава нов потребител и група с име git, и задайте началната директория на / home / git. Резултатът ще изглежда по следния начин:

Добавяне на системен потребител 'git' (UID 112) ... Добавяне на нова група 'git' (GID 118) ... Добавяне на нов потребител 'git' (UID 112) с група 'git' ... Създаване на домашна директория '/ home / git' .. 

Изтеглете двоичен файл на Gitea #

Насочете се към страницата за изтегляне на Gitea и изтеглете най-новия двоичен файл за вашата архитектура. По време на писането последната версия е 1.10.2. Ако има нова версия, променете ВЕРСИЯ променлива в командата по-долу.

Използвайте wget за да изтеглите двоичния файл на Gitea в / tmp директория:

ВЕРСИЯ = 1.14.1sudo wget -O / tmp / gitea https: // dl.gitea.io / gitea / $ VERSION / gitea - $ VERSION -linux-amd64

Можете да стартирате gitea двоично от всяко място. Ще следваме конвенцията и ще преместим двоичния файл в / usr / local / bin директория:

sudo mv / tmp / gitea / usr / local / bin

Направете изпълним двоичен файл:

sudo chmod + x / usr / local / bin / gitea

Изпълнете командите по-долу, за да създадете директориите и да зададете необходимите разрешения и собственост:

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

Структурата на директориите по-горе се препоръчва от официалната документация на Gitea.

Разрешенията на / и т.н. / gitea директория са зададени на 770 така че съветникът за инсталиране да може да създаде конфигурационния файл. След като инсталацията приключи, ще зададем по-ограничителни разрешения.

Създайте файл на Systemd Unit #

Ще стартираме Gitea като системна услуга.

Изтеглете примерния файл от системен модул в / etc / systemd / system директория, като напишете:

sudo wget https: // raw.githubuserсъдържание.com / go-gitea / gitea / main / contrib / systemd / gitea.услуга -P / etc / systemd / system /

Не е необходимо да редактирате файла, той е конфигуриран да съответства на нашата настройка.

Активирайте и стартирайте услугата Gitea:

sudo systemctl daemon-reloadsudo systemctl enable --now gitea

Проверете дали Gitea работи:

sudo systemctl статус gitea
● gitea.услуга - Gitea (Git с чаша чай) Заредено: заредено (/ etc / systemd / system / gitea.обслужване; активиран; предварително зададен от доставчика: активиран) Активен: активен (работи) от четвъртък 2021-05-06 05:32:04 UTC; Преди 7s Основен PID: 77781 (gitea) Задачи: 6 (ограничение: 470) Памет: 130.6M CGroup: / система.филия / gitea.услуга └─77781 / usr / local / bin / gitea web --config / etc / gitea / app.ini .. 

Конфигурирайте Gitea #

След като Gitea е изтеглена и работи, можем да завършим инсталацията чрез уеб интерфейса.

По подразбиране Gitea слуша връзки на порт 3000 на всички мрежови интерфейси.

Ако на сървъра ви работи защитна стена UFW, ще трябва да отворите порта Gitea. За да позволите трафик на пристанището 3000, въведете следната команда:

sudo ufw позволяват 3000 / tcp

Отворете браузъра си, напишете http: // YOUR_DOMAIN_IR_IP: 3000, и ще се появи екран, подобен на следния:

Настройки на базата данни:

Общи настройки на приложението:

Можете да промените настройките по всяко време, като редактирате конфигурационния файл на Gitea.

За да започнете инсталацията, натиснете бутона „Инсталиране на Gitea“.

Инсталацията е незабавна. След като приключите, ще бъдете пренасочени към страницата за вход.

Кликнете върху „Нуждаете се от акаунт? Регистрирай се сега.”Връзка. Първият регистриран потребител се добавя автоматично към администраторската група.

Променете разрешенията на конфигурационния файл на Gitea на само за четене, като използвате:

sudo chmod 750 / etc / giteasudo chmod 640 / etc / gitea / app.ini

Това е. Gitea е инсталирана на вашата машина Ubuntu.

Конфигуриране на Nginx като SSL терминален прокси номер

Тази стъпка не е задължителна, но е силно препоръчителна. Прекратяването на SSL означава, че Nginx ще действа като посредническа точка между приложението Gitea и уеб клиентите, за да имате достъп до Gitea чрез HTTPS.

За да използвате Nginx като обратен прокси, трябва да имате домейн или поддомейн, сочещ към публичния IP на вашия сървър. В този пример ще използваме git.пример.com.

Първо инсталирайте Nginx и генерирайте безплатен Let's Encrypt SSL сертификат, като използвате ръководствата по-долу:

След като приключите, отворете вашия текстов редактор и редактирайте файла на блока на сървъра на домейн:

sudo nano / etc / nginx / sites-enabled / git.пример.com
/ etc / nginx / sites-enabled / git.пример.com
сървър слуша 80; име_на сървър git.пример.com; включва фрагменти / letsencrypt.conf; връщане 301 https: // git.пример.com $ request_uri;  сървър слушане 443 ssl http2; име_на сървър git.пример.com; proxy_read_timeout 720s; proxy_connect_timeout 720s; proxy_send_timeout 720s; client_max_body_size 50м; # Прокси заглавки proxy_set_header X-Forwarded-Host $ host; proxy_set_header X-Forwarded-For $ proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $ схема; proxy_set_header X-Real-IP $ remote_addr; # SSL параметри ssl_certificate / etc / letsencrypt / live / git.пример.com / пълна верига.пем; ssl_certificate_key / etc / letsencrypt / live / git.пример.com / privkey.пем; ssl_trusted_certificate / etc / letsencrypt / live / git.пример.com / верига.пем; включва фрагменти / letsencrypt.conf; включва фрагменти / ssl.conf; # регистрационни файлове access_log / var / log / nginx / git.пример.com.достъп.дневник; error_log / var / log / nginx / git.пример.com.грешка.дневник; # Обработва / заявява местоположение / proxy_redirect off; proxy_pass http: // 127.0.0.1: 3000;  

Не забравяйте да замените git.пример.com с вашия Gitea домейн и задайте правилния път към файловете за SSL сертификати. HTTP трафикът се пренасочва към HTTPS

Рестартирайте услугата Nginx, за да влязат в сила промените:

sudo systemctl рестартирайте nginx

След това променете домейна на Gitea и главния URL адрес. За целта отворете конфигурационния файл и редактирайте следните редове:

sudo nano / etc / gitea / app.ini
/ etc / gitea / app.ini
[сървър] DOMAIN = git.пример.com ROOT_URL = https: // git.пример.com / 

Рестартирайте услугата Gitea, като напишете:

sudo systemctl рестартирайте gitea

На този етап проксито на Gitea е конфигурирано и можете да получите достъп до него на адрес: https: // git.пример.com

Конфигуриране на известия по имейл #

Ако искате вашият екземпляр на Gitea да изпраща имейли с известия, можете да инсталирате Postfix или да използвате някаква транзакционна пощенска услуга като SendGrid, MailChimp, MailGun или SES.

За да активирате известия по имейл, отворете конфигурационния файл и редактирайте следните редове:

sudo nano / etc / gitea / app.ini
/ etc / gitea / app.ini
[mailer] ENABLED = true HOST = SMTP_SERVER: SMTP_PORT FROM = SENDER_EMAIL USER = SMTP_USER PASSWD = YOUR_SMTP_PASSWORD 

Уверете се, че сте въвели правилната информация за SMTP сървъра.

Рестартирайте услугата Gitea, за да влязат в сила промените:

sudo systemctl рестартирайте gitea

За да проверите настройките и да изпратите тестов имейл, влезте в Gitea и отидете на: Администриране на сайта> Конфигурация> Конфигурация на SMTP Mailer.

Gitea също ви позволява да се свързвате със Slack, като създавате уеб уеб кука и изпращате известия до вашите Slack канали .

Надстройка на Gitea #

За да надстроите до последната версия на Gitea, просто изтеглете и заменете двоичния файл.

  1. Спрете услугата Gitea:

    sudo systemctl stop gitea
  2. Изтеглете най-новата версия на Gitea и я преместете в / usr / local / bin директория:

    ВЕРСИЯ =wget -O / tmp / gitea https: // dl.gitea.io / gitea / $ VERSION / gitea - $ VERSION -linux-amd64sudo mv / tmp / gitea / usr / local / bin
  3. Направете двоично изпълним файл:

    sudo chmod + x / usr / local / bin / gitea
  4. Рестартирайте услугата Gitea:

    sudo systemctl рестартирайте gitea

Това е.

Заключение №

Този урок ви преведе през инсталацията на Gitea на Ubuntu 20.04. За повече информация как да конфигурирате вашия екземпляр на Gitea и да създадете първия си проект, посетете страницата с документация на Gitea .

Ако имате въпроси, не се колебайте да оставите коментар по-долу.

Как да заснемете и поточно предадете игралната си сесия на Linux
В миналото играта на игри се смяташе само за хоби, но с течение на времето игралната индустрия отбеляза огромен ръст по отношение на технологиите и бр...
Най-добрите игри за игра с ръчно проследяване
Oculus Quest наскоро представи страхотната идея за ръчно проследяване без контролери. С непрекъснато нарастващия брой игри и дейности, които изпълнява...
Как да покажете OSD наслагване в приложения на цял екран за Linux и игри
Играта на цял екран или използване на приложения в режим на цял екран без разсейване може да ви откъсне от съответната системна информация, видима в п...