Comment installer Gitea avec PostgreSQL sur Debian 11

Gitea est une solution gratuite, open-source et auto-hébergée pour les serveurs Git. Gitea a été écrit dans le langage de programmation Go, une application légère, disponible sous forme de paquet binaire qui peut être installé sur la plupart des plateformes, notamment Windows, Linux et macOS. C’est l’une des alternatives à GitLab, robuste, évolutive, rapide et facile à utiliser.

Gitea offre de nombreuses fonctionnalités, notamment un éditeur de fichiers de dépôt, le suivi des bugs et du temps, le branchement du dépôt, le verrouillage des fichiers, le wiki intégré, la fusion, la prise en charge de plusieurs bases de données, le processus de mise à niveau facile, le registre de conteneurs intégré, et bien plus encore.

Dans ce tutoriel, je vais te montrer comment installer Gitea à partir d’un binaire avec PostgreSQL sur Debian 11.

Conditions préalables

  • Un serveur fonctionnant sous Debian 11.
  • Un mot de passe root est configuré sur le serveur.

Étape 1 – Mise à jour du système d’exploitation

Avant de commencer l’installation de Gitea, exécute la commande ci-dessous pour mettre à jour ton système avec la dernière version.

sudo apt-get update -y

sudo apt-get upgrade -y

Étape 2 – Installe et configure PostgreSQL

Gitea prend en charge toutes les principales bases de données comme MySQL, MariaDB, SQLite, MySQL et PostgreSQL, mais dans ce guide, PostgreSQL est utilisé comme base de données Gitea.

Tout d’abord, crée le référentiel PostgreSQL à l’aide de la commande suivante :

sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'

Ensuite, tu devras importer la clé de signature du référentiel :

wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -

Maintenant, installe PostgreSQL à l’aide des commandes suivantes :

sudo apt-get update

sudo apt-get -y install postgresql

Ensuite, démarre le service PostgreSQL, active-le au démarrage du système et vérifie l’état du service PostgreSQL à l’aide de la commande suivante :

sudo systemctl start postgresql

sudo systemctl enable postgresql

sudo systemctl status postgresql

Installer PostgreSQL

Ensuite, tu dois passer du schéma de cryptage md5 au schéma ‘SCRAM-SHA-256’ pour une meilleure sécurité. Si tu veux te connecter à PostgreSQL à distance, tu dois autoriser ton adresse IP dans le fichier de configuration de PostgreSQL. Ouvre le fichier de configuration pour apporter des modifications à l’aide de la commande suivante :

sudo vim /etc/postgresql/14/main/postgresql.conf

Si tu as installé une autre version de PostgreSQL, alors modifie le chemin de la commande ci-dessus en fonction de celle-ci.

Ensuite, modifie les variables suivantes en fonction de tes besoins :

listen_addresses = 'localhost, 134.122.38.45'
password_encryption = scram-sha-256

Enregistre et quitte le fichier et redémarre le service PostgreSQL pour appliquer les modifications.

sudo systemctl restart postgresql

Ensuite, connecte-toi au shell PostgreSQL à l’aide de la commande suivante :

sudo -u postgres psql

Crée ensuite un rôle d’utilisateur et une base de données pour Gitea en exécutant la commande suivante :

postgres=# CREATE ROLE gitea WITH LOGIN PASSWORD '[email protected]';

postgres=# CREATE DATABASE giteadb;

postgres=# GRANT ALL PRIVILEGES ON DATABASE giteadb TO gitea;

postgres=# exit

Ici, tu dois définir le nom d’utilisateur, le nom de la base de données et ton mot de passe pour Gitea.

Créer un rôle dans postgres

À ce stade, ta configuration PostgreSQL est prête pour Gitea. Vérifie les paramètres d’authentification dans le fichier /etc/postgresql/14/main/pg_hba.conf.

Par défaut, PostgreSQL accepte toutes les connexions locales.

host    all             all             127.0.0.1/32            scram-sha-256

Si tu veux utiliser giteadb à distance, ajoute la ligne suivante avec ton adresse IP dans /etc/postgresql/14/main/pg_hba.conf

host    giteadb        gitea            134.122.38.0/32           scram-sha-256 

Étape 3 – Installe et configure Git

Ensuite, installe git à l’aide de la commande suivante :

sudo apt install git

Vérifie l’installation de git en vérifiant la version de Git :

git --version

Sortie:-

git version 2.30.2

Ensuite, tu dois définir ton nom et ton adresse e-mail pour Git.

git config --global user.name "Your Name"

git config --global user.email "[email protected]

Tu peux vérifier ta configuration de Git en utilisant la commande suivante.

git config --list

Sortie:-

user.name=Your Name
[email protected]

Étape 4 – Créer un utilisateur git pour Gitea

Maintenant, tu dois créer un utilisateur Gitea. Tu peux le faire à l’aide de la commande suivante :

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

Cela créera un nouvel utilisateur git.

Étape 5 – Installe et configure Gitea

Va sur la page de téléchargement de Gitea et télécharge la dernière version du binaire Gitea disponible. Au moment de la rédaction de ce tutoriel, la dernière version de Gitea est 1.15.7. Tu peux modifier la variable VERSION dans la commande ci-dessous pour installer toute autre version.

cd /tmp
GITEAVERSION=1.15.7
wget -O gitea https://dl.gitea.io/gitea/${GITEAVERSION}/gitea-${GITEAVERSION}-linux-amd64

Ensuite, déplace le binaire Gitea dans le chemin du système avec la commande suivante :

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

Ensuite, définis l’autorisation d’exécution du fichier binaire Gitea en exécutant la commande suivante dans le terminal :

chmod +x /usr/local/bin/gitea

Ensuite, tu devras créer une structure de répertoire pour Gitea, pour ce faire, exécute les commandes suivantes :

sudo mkdir -p /etc/gitea

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

Ensuite, donne les permissions nécessaires pour que Gitea fonctionne correctement avec les commandes suivantes :

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

Ensuite, crée un fichier de service systemd pour Gitea avec la commande suivante :

vim /etc/systemd/system/gitea.service

Colle le code suivant dans ce fichier.

[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

Sauvegarde et quitte le fichier. Ensuite, recharge le démon systemd et démarre le service Gitea à l’aide de la commande ci-dessous :

sudo systemctl daemon-reload
sudo systemctl start gitea

Ensuite, tu dois activer le service Gitea au redémarrage du système :

sudo systemctl enable gitea

Ensuite, vérifie le statut de Gitea avec la commande suivante :

sudo systemctl status gitea

Tu devrais voir la sortie suivante :

Vérifie le statut de Gitea

Comme tu peux le voir, Gitea est démarré et fonctionne sur le port 3000 par défaut. Tu peux vérifier le port de Gitea avec la commande suivante :

netstat -tulpan | grep 3000

Tu devrais voir une sortie comme celle ci-dessous :

tcp6       0      0 :::3000                 :::*                    LISTEN      43778/gitea

Étape 6 – Accéder à l’interface Web de Gitea

Gitea est maintenant lancé et écoute sur le port 3000 par défaut. Ouvre ton navigateur et tape https://YOURIPADDRESS:3000.

Ensuite, remplis les paramètres requis comme suit :

Paramètres de la base de données

Type de base de données : PostgreSQL
Hôte : 127.0.0.1:5432
Nom d’utilisateur : gitea
Mot de passe : Saisis le mot de passe que tu as choisi lors de la création du rôle Postgres.
Nom de la base de données : giteadb
SSL : Désactivé

Configuration de la base de données Gitea

Paramètres généraux


Titre du site : Titre de ton choix.
Chemin de la racine du référentiel : /var/lib/gitea/data/repositories
Chemin racine de Git LFS : /var/lib/gitea/data/lfs
Exécuter en tant que nom d’utilisateur : git
Domaine du serveur SSH : ton_domaine/IP
Port du serveur SSH : 22
Gitea HTTP Listen Post : 3000
URL de base de Gitea : http://YOURIPADDRESS:3000
Chemin du journal : /var/lib/gitea/log

Paramètres généraux de Gitea

À ce stade, tu peux configurer ta messagerie et les paramètres du serveur et des tiers, ou tu peux le faire plus tard. Cependant, tu dois configurer l’Administrateur

Nom d’utilisateur pour te connecter à Gitea. Ensuite, va dans Paramètres optionnels et entre les détails de Paramètres du compte administrateur et crée Utilisateur de l’administrateur

Paramètres facultatifs Gitea

Ensuite, clique sur le bouton ‘Installer Gitea’. Une fois l’installation terminée avec succès, tu seras redirigé vers le tableau de bord Gitea présenté sur la page suivante :

Tableau de bord Gitea

Maintenant, tu peux explorer Gitea et à partir de l’option Administration du site de ton compte admin, tu peux configurer d’autres services tiers comme intégrer le répertoire actif de la fenêtre avec Gitea.

Résumé de Gitea

Étape 7 – Configuration des notifications par courriel

Tu peux activer les notifications par courriel dans Gitea en utilisant Sendmail ou un service de courriel tiers tel que Amazon SES, Sendgrid.

Pour activer les notifications par courriel, ouvre le fichier de configuration de Gitea à l’aide de la commande suivante :

vim /etc/gitea/app.in

Ensuite, modifie la section suivante du fichier et ajoute le code suivant en fonction de tes paramètres de messagerie.

[mailer]
ENABLED        = true
FROM           = [email protected]
MAILER_TYPE    = smtp
HOST           = mail.example.com:587
IS_TLS_ENABLED = true
USER           = [email protected]
PASSWD         = password

Enregistre et quitte le fichier et redémarre le service Gitea pour appliquer les modifications :

sudo systemctl restart gitea

Étape 10 – Mise à jour de Gitea

La mise à jour de Gitea est un processus sans effort. Il te suffit de télécharger et de remplacer le binaire de Gitea.

Tout d’abord, arrête le service Gitea :

sudo systemctl stop gitea

Ensuite, télécharge et installe le binaire Gitea à l’aide de la commande suivante :

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

Ensuite, démarre le service Gitea avec la commande suivante :

sudo systemctl start gitea

Maintenant, ton Gitea est à jour sans aucun temps d’arrêt.

Conclusion

Félicitations ! Tu as installé avec succès le service git Gitea sur Debian 11. Tu peux maintenant facilement mettre à jour Gitea et gérer ton dépôt git via un navigateur Web. En outre, tu es invité à me demander si tu as des questions.

Vous aimerez aussi...