Gitea je bezplatné, open-source a samostatně hostované řešení pro servery Git. Gitea napsal v programovacím jazyce Go, odlehčenou aplikaci, dostupnou jako binární balíček, který lze nainstalovat na většinu platforem včetně Windows, Linux a macOS. Je to jedna z robustních, škálovatelných, rychlých, snadno použitelných a alternativ ke GitLabu.
Gitea nabízí mnoho funkcí včetně editoru souborů úložiště, sledování chyb a času, větvení úložiště, zamykání souborů, vestavěné ve wiki, slučování, podpoře více databází, snadném procesu upgradu, vestavěném registru kontejnerů a mnohem více.
V tomto tutoriálu vám ukážu, jak nainstalovat Gitea z binárního kódu pomocí PostgreSQL na Debian 11 .
Předpoklady
- Server se systémem Debian 11.
- Na serveru je nakonfigurováno heslo uživatele root.
Krok 1 – Aktualizace OS
Před zahájením instalace Gitea spusťte níže uvedený příkaz a aktualizujte svůj systém na nejnovější verzi.
sudo apt-get update -y
sudo apt-get upgrade -y
Krok 2 – Instalace a konfigurace PostgreSQL
Gitea podporuje všechny hlavní databáze jako MySQL, MariaDB, SQLite, MySQL a PostgreSQL, ale v této příručce je PostgreSQL používán jako databáze Gitea.
Nejprve vytvořte úložiště PostgreSQL pomocí následujícího příkazu:
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
Dále budete muset importovat podpisový klíč úložiště:
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
Nyní nainstalujte PostgreSQL pomocí následujících příkazů:
sudo apt-get update
sudo apt-get -y install postgresql
Dále spusťte službu PostgreSQL, povolte ji při startu systému a zkontrolujte stav služby PostgreSQL pomocí následujícího příkazu:
sudo systemctl start postgresql
sudo systemctl enable postgresql
sudo systemctl status postgresql
Dále se musíte přepnout na 'SCRAM-SHA-256' schéma z md5 šifrovací schéma pro lepší zabezpečení. Pokud se chcete k PostgreSQL připojit vzdáleně, musíte povolit svou IP adresu v konfiguračním souboru PostgreSQL. Otevřete konfigurační soubor a proveďte změny pomocí následujícího příkazu:
sudo vim /etc/postgresql/14/main/postgresql.conf
Pokud máte nainstalovanou jinou verzi PostgreSQL, změňte podle ní výše uvedenou cestu příkazu.
Dále změňte následující proměnné podle svých požadavků:
listen_addresses = 'localhost, 134.122.38.45'
password_encryption = scram-sha-256
Uložte a ukončete soubor a restartujte službu PostgreSQL, abyste použili změny.
sudo systemctl restart postgresql
Dále se přihlaste do prostředí PostgreSQL pomocí následujícího příkazu:
sudo -u postgres psql
Poté vytvořte uživatelskou roli a databázi pro Gitea provedením následujícího příkazu:
postgres=# CREATE ROLE gitea WITH LOGIN PASSWORD '[email protected]';
postgres=# CREATE DATABASE giteadb;
postgres=# GRANT ALL PRIVILEGES ON DATABASE giteadb TO gitea;
postgres=# exit
Zde musíte nastavit uživatelské jméno, název databáze a heslo pro Gitea.
V tomto okamžiku, když je váš PostgreSQL nastaven a připraven na Gitea, ověřte nastavení ověřování v souboru /etc/postgresql/14/main/pg_hba.conf.
PostgreSQL standardně přijímá všechna místní připojení.
host all all 127.0.0.1/32 scram-sha-256
Pokud chcete používat giteadb vzdáleně, přidejte následující řádek se svou IP adresou do /etc/postgresql/14/main/pg_hba.conf
host giteadb gitea 134.122.38.0/32 scram-sha-256
Krok 3 – Instalace a konfigurace Git
Dále nainstalujte git pomocí následujícího příkazu:
sudo apt install git
Ověřte instalaci git kontrolou verze Git:
git --version
Výstup:-
git version 2.30.2
Dále musíte nastavit své jméno a e-mailovou adresu pro Git.
git config --global user.name "Your Name"
git config --global user.email "[email protected]”
Svou konfiguraci Git můžete zkontrolovat pomocí následujícího příkazu.
git config --list
Výstup:-
user.name=Your Name
[email protected]
Krok 4 – Vytvoření uživatele git pro Gitea
Nyní budete muset vytvořit uživatele Gitea. Můžete to provést pomocí následujícího příkazu:
sudo adduser \
--system \
--shell /bin/bash \
--gecos 'Git Version Control' \
--group \
--disabled-password \
--home /home/git \
git
Tím se vytvoří nový uživatelský git.
Krok 5 – Instalace a konfigurace Gitea
Přejděte na stránku stahování Gitea a stáhněte si nejnovější verzi dostupného binárního souboru Gitea. V době psaní tohoto návodu je nejnovější verze Gitea 1.15.7. Proměnnou VERSION můžete změnit v níže uvedeném příkazu a nainstalovat jakoukoli jinou verzi.
cd /tmp
GITEAVERSION=1.15.7
wget -O gitea https://dl.gitea.io/gitea/${GITEAVERSION}/gitea-${GITEAVERSION}-linux-amd64
Dále přesuňte binární soubor Gitea do systémové cesty pomocí následujícího příkazu:
sudo mv /tmp/gitea /usr/local/bin
Dále nastavte oprávnění ke spuštění binárního souboru Gitea spuštěním následujícího příkazu do terminálu:
chmod +x /usr/local/bin/gitea
Dále budete muset vytvořit adresářovou strukturu pro Gitea, k tomu spusťte následující příkazy:
sudo mkdir -p /etc/gitea
sudo mkdir -p /var/lib/gitea/{custom,data,indexers,public,log}
Dále udělte požadovaná oprávnění, aby Gitea správně fungovala s následujícími příkazy:
sudo chown -R git:git /var/lib/gitea/
sudo chown root:git /etc/gitea
sudo chmod -R 750 /var/lib/gitea/
sudo chmod 770 /etc/gitea
Dále vytvořte soubor služby systemd pro Gitea pomocí následujícího příkazu:
vim /etc/systemd/system/gitea.service
Vložte do něj následující kód.
[Unit]
Description=Gitea
After=syslog.target
After=network.target
After=postgresql.service
[Service]
RestartSec=2s
Type=simple
User=git
Group=git
WorkingDirectory=/var/lib/gitea/
ExecStart=/usr/local/bin/gitea web -c /etc/gitea/app.ini
Restart=always
Environment=USER=git HOME=/home/git GITEA_WORK_DIR=/var/lib/gitea
[Install]
WantedBy=multi-user.target
Uložte a ukončete soubor. Poté znovu načtěte démona systemd a spusťte službu Gitea pomocí níže uvedeného příkazu:
sudo systemctl daemon-reload
sudo systemctl start gitea
Dále musíte povolit službu Gitea při restartu systému:
sudo systemctl enable gitea
Dále ověřte stav Gitea pomocí následujícího příkazu:
sudo systemctl status gitea
Měli byste vidět následující výstup:
Jak můžete vidět, Gitea je standardně spuštěna a běží na portu 3000. Port Gitea můžete ověřit pomocí následujícího příkazu:
netstat -tulpan | grep 3000
Měli byste vidět výstup jako níže:
tcp6 0 0 :::3000 :::* LISTEN 43778/gitea
Krok 6 – Přístup k webovému rozhraní Gitea
Gitea je nyní aktivní a ve výchozím nastavení naslouchá na portu 3000. Otevřete prohlížeč a zadejte https://YOURIPADDRESS:3000.
Dále vyplňte požadované parametry takto:
Nastavení databáze
Typ databáze:PostgreSQL
Hostitel:127.0.0.1:5432
Uživatelské jméno:gitea
Heslo:Zadejte heslo, které jste zvolili při vytváření role Postgres.
Název databáze:giteadb
SSL:Zakázat
Obecná nastavení
Název webu:Název dle vašeho výběru.
Kořenová cesta úložiště:/var/lib/gitea/data/repositories
Kořenová cesta Git LFS:/var/lib/gitea/data/lfs
Spustit jako uživatelské jméno:git
Doména serveru SSH:vaše_doména/IP
Port serveru SSH:22
Gitea HTTP Listen Post:3000
Základní URL Gitea:http:// YOURIPADDRESS:3000
Cesta protokolu:/var/lib/gitea/log
V této fázi můžete nakonfigurovat svůj e-mail a nastavení serveru a třetích stran, nebo to můžete udělat později. Měli byste však nakonfigurovatAdministrátora
uživatelské jméno pro přihlášení do Gitea. Přejděte tedy na volitelné nastavení a zadejte podrobnosti nastavení účtu správce a vytvořte 'Administrator User' pro Gitea.
Dále klikněte na tlačítko 'Instalovat Gitea'. Po úspěšném dokončení instalace budete přesměrováni na řídicí panel Gitea zobrazený na následující stránce:
Nyní můžete prozkoumat Gitea a pomocí možnosti Správa webu ze svého účtu správce můžete nastavit další služby třetích stran, jako je integrace aktivního adresáře okna s Gitea.
Krok 7 – Nastavení e-mailových upozornění
E-mailová upozornění v Gitea můžete povolit pomocí Sendmailu nebo prostřednictvím e-mailové služby třetí strany, jako je Amazon SES, Sendgrid.
Chcete-li povolit e-mailová upozornění, otevřete konfigurační soubor Gitea pomocí následujícího příkazu:
vim /etc/gitea/app.in
Dále upravte následující sekci v souboru a přidejte následující kód podle nastavení e-mailu.
[mailer]
ENABLED = true
FROM = [email protected]
MAILER_TYPE = smtp
HOST = mail.example.com:587
IS_TLS_ENABLED = true
USER = [email protected]
PASSWD = password
Uložte a ukončete soubor a restartujte službu Gitea, abyste použili změny:
sudo systemctl restart gitea
Krok 10 – Aktualizace Gitea
Upgrade Gitea je snadný proces a stačí si stáhnout a nahradit binárku Gitea.
Nejprve zastavte službu Gitea:
sudo systemctl stop gitea
Dále si stáhněte a nainstalujte binárku Gitea pomocí následujícího příkazu:
cd /tmp
GITEAVERSION=LATESTVERSION
wget -O gitea https://dl.gitea.io/gitea/${GITEAVERSION}/gitea-${GITEAVERSION}-linux-amd64
sudo mv gitea /usr/local/bin
sudo chmod +x /usr/local/bin/gitea
Dále spusťte službu Gitea pomocí následujícího příkazu:
sudo systemctl start gitea
Nyní je vaše Gitea aktuální bez jakýchkoli prostojů.
Závěr
Gratulujeme! Úspěšně jste nainstalovali službu Gitea git na Debian 11. Nyní můžete snadno aktualizovat Gitea a spravovat své úložiště git prostřednictvím webového prohlížeče. Kromě toho se mě můžete zeptat, pokud máte nějaké otázky.