Linux

Comment installer Gitea sur Ubuntu 20.04

Comment installer Gitea sur Ubuntu 20.04

Gitea est un serveur git auto-hébergé rapide et facile à utiliser écrit en Go. Il comprend un éditeur de fichiers de référentiel, un suivi des problèmes de projet, une gestion des utilisateurs, des notifications, un wiki intégré et bien plus encore.

Gitea est une application légère et peut être installée sur des systèmes de faible puissance. Si vous recherchez une alternative à Gitlab avec une empreinte mémoire beaucoup plus petite et que vous n'avez pas besoin de toutes les fonctionnalités proposées par Gitlab, vous devriez essayer Gitea.

Cet article explique comment installer et configurer Gitea sur Ubuntu 20.04.

Conditions préalables #

Gitea prend en charge SQLite, PostgreSQL et MySQL/MariaDB en tant que backends de base de données.

SQLite n'est recommandé que pour les petites installations. Les installations plus importantes doivent utiliser MySQL ou PostgreSQL.

Nous utiliserons SQLite comme base de données pour Gitea. Si SQLite n'est pas installé sur votre système Ubuntu, installez-le en entrant les commandes suivantes en tant qu'utilisateur sudo :

mise à jour sudo aptsudo apt installer sqlite3

Installation de Gitea #

Gitea fournit des images Docker et peut être installé à partir de la source, du binaire et en tant que package. Nous allons installer Gitea à partir du binaire.

Installer Git #

La première étape consiste à installer Git sur votre serveur :

mise à jour sudo aptsudo apt installer git

Vérifiez l'installation en affichant la version de Git :

git --version
git version 2.25.1 

Créer un utilisateur Git #

Créez un nouvel utilisateur système qui exécutera l'application Gitea en tapant :

sudo adduser \ --système \ --shell /bin/bash \ --gecos 'Git Version Control' \ --grouper \ --mot de passe-désactivé \ --accueil /accueil/git \ git

La commande ci-dessus crée un nouvel utilisateur et un groupe nommé git, et définissez le répertoire personnel sur /accueil/git. La sortie ressemblera à quelque chose comme ci-dessous :

Ajout de l'utilisateur système 'git' (UID 112)… Ajout d'un nouveau groupe 'git' (GID 118)… Ajout d'un nouvel utilisateur 'git' (UID 112) avec le groupe 'git'… Création du répertoire personnel '/home/git'… 

Télécharger le binaire Gitea #

Rendez-vous sur la page de téléchargement de Gitea et téléchargez le dernier binaire pour votre architecture. Au moment de la rédaction, la dernière version est 1.dix.2. Si une nouvelle version est disponible, modifiez le VERSION variable dans la commande ci-dessous.

Utiliser wget pour télécharger le binaire Gitea dans le /tmp annuaire:

VERSION=1.14.1sudo wget -O /tmp/gitea https://dl.gite.io/gitea/$VERSION/gitea-$VERSION-linux-amd64

Vous pouvez exécuter le gite binaire de n'importe quel endroit. Nous allons suivre la convention et déplacer le binaire vers le /usr/local/bin annuaire:

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

Rendez le binaire exécutable :

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

Exécutez les commandes ci-dessous pour créer les répertoires et définir les autorisations et la propriété requises :

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/gitearacine sudo chown:git /etc/giteasudo chmod 770 /etc/gitea

La structure de répertoire ci-dessus est recommandée par la documentation officielle de Gitea.

Les autorisations du /etc/gita répertoire sont définis sur 770 pour que l'assistant d'installation puisse créer le fichier de configuration. Une fois l'installation terminée, nous définirons des autorisations plus restrictives.

Créer un fichier d'unité Systemd #

Nous exécuterons Gitea en tant que service systemd.

Téléchargez l'exemple de fichier d'unité systemd dans le /etc/systemd/system répertoire en tapant :

sudo wget https://raw.githubusercontent.com/go-gitea/gitea/main/contrib/systemd/gitea.service -P /etc/systemd/system/

Vous n'avez pas besoin de modifier le fichier, il est configuré pour correspondre à notre configuration.

Activez et démarrez le service Gitea :

sudo systemctl démon-rechargersudo systemctl enable --now gitea

Vérifiez que Gitea est en cours d'exécution :

sudo systemctl status gitea
● gite.service - Gitea (Git avec une tasse de thé) Chargé : chargé (/etc/systemd/system/gitea.un service; activée; préréglage du fournisseur : activé) Actif : actif (en cours d'exécution) depuis le jeu. 2021-05-06 05:32:04 UTC ; Il y a 7s PID principal : 77781 (gitea) Tâches : 6 (limite : 470) Mémoire : 130.Groupe C 6M : /système.tranche/gîte.service └─77781 /usr/local/bin/gitea web --config /etc/gitea/app.ini… 

Configurer Gitea #

Maintenant que Gitea est téléchargé et en cours d'exécution, nous pouvons finaliser l'installation via l'interface web.

Par défaut, Gitea écoute les connexions sur le port 3000 sur toutes les interfaces réseau.

Si vous avez un pare-feu UFW en cours d'exécution sur votre serveur, vous devrez ouvrir le port Gitea. Pour autoriser le trafic sur le port 3000, entrez la commande suivante :

sudo ufw autoriser 3000/tcp

Ouvrez votre navigateur, tapez http://YOUR_DOMAIN_IR_IP:3000, et un écran semblable au suivant apparaîtra :

Paramètres de la base de données :

Paramètres généraux de l'application :

Vous pouvez modifier les paramètres à tout moment en éditant le fichier de configuration Gitea.

Pour démarrer l'installation, cliquez sur le bouton « Installer Gitea ».

L'installation est instantanée. Une fois terminé, vous serez redirigé vers la page de connexion.

Cliquez sur « Besoin d'un compte? S'inscrire maintenant." relier. Le premier utilisateur enregistré est automatiquement ajouté au groupe Admin.

Modifiez les autorisations du fichier de configuration Gitea en lecture seule en utilisant :

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

C'est ça. Gitea a été installé sur votre machine Ubuntu.

Configuration de Nginx en tant que proxy de terminaison SSL #

Cette étape est facultative, mais elle est fortement recommandée. La terminaison SSL signifie que Nginx agira comme un point intermédiaire entre l'application Gitea et les clients Web afin que vous puissiez accéder à Gitea via HTTPS.

Pour utiliser Nginx comme proxy inverse, vous devez avoir un domaine ou un sous-domaine pointant vers l'adresse IP publique de votre serveur. Dans cet exemple, nous utiliserons git.Exemple.com.

Tout d'abord, installez Nginx et générez un certificat SSL Let's Encrypt gratuit à l'aide des guides ci-dessous :

Une fois cela fait, ouvrez votre éditeur de texte et modifiez le fichier de blocage du serveur de domaine :

sudo nano /etc/nginx/sites-enabled/git.Exemple.com
/etc/nginx/sites-enabled/git.Exemple.com
serveur  écouter 80; nom_serveur git.Exemple.com; inclure des extraits/letsencrypt.conf ; retour 301 https://git.Exemple.com$request_uri;  serveur  écouter 443 ssl http2; nom_serveur git.Exemple.com; proxy_read_timeout 720s ; proxy_connect_timeout 720s ; proxy_send_timeout 720s ; client_max_body_size 50m ; # En-têtes proxy proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for ; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Real-IP $remote_addr; # Paramètres SSL ssl_certificate /etc/letsencrypt/live/git.Exemple.com/chaîne complète.pem; ssl_certificate_key /etc/letsencrypt/live/git.Exemple.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/git.Exemple.com/chaîne.pem; inclure des extraits/letsencrypt.conf ; inclure des extraits/ssl.conf ; # fichiers journaux access_log /var/log/nginx/git.Exemple.com.accès.Journal; error_log /var/log/nginx/git.Exemple.com.Erreur.Journal; # Handle/requests location/ proxy_redirect off; proxy_pass http://127.0.0.1:3000;   

N'oubliez pas de remplacer git.Exemple.com avec votre domaine Gitea et définissez le chemin correct vers les fichiers du certificat SSL. Le trafic HTTP est redirigé vers HTTPS

Redémarrez le service Nginx pour que les modifications prennent effet :

sudo systemctl redémarrer nginx

Ensuite, changez le domaine Gitea et l'url racine. Pour cela, ouvrez le fichier de configuration et modifiez les lignes suivantes :

sudo nano /etc/gitea/app.ini
/etc/gita/app.ini
[serveur] DOMAINE = git.Exemple.com URL_RACINE = https://git.Exemple.com/ 

Redémarrez le service Gitea en tapant :

sudo systemctl redémarrer gitea

A ce stade, le proxy Gitea est configuré, et vous pouvez y accéder à l'adresse : https://git.Exemple.com

Configuration des notifications par e-mail #

Si vous souhaitez que votre instance Gitea envoie des e-mails de notification, vous pouvez soit installer Postfix, soit utiliser un service de messagerie transactionnelle tel que SendGrid, MailChimp, MailGun ou SES.

Pour activer les notifications par e-mail, ouvrez le fichier de configuration et modifiez les lignes suivantes :

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

Assurez-vous de mettre les informations correctes sur le serveur SMTP.

Redémarrez le service Gitea pour que les modifications prennent effet :

sudo systemctl redémarrer gitea

Pour vérifier les paramètres et envoyer un e-mail de test, connectez-vous à Gitea et accédez à : Administration du site > Configuration > Configuration de la messagerie SMTP.

Gitea vous permet également de vous connecter à Slack en créant un webhook et d'envoyer des notifications à vos chaînes Slack .

Mise à niveau de Gitea #

Pour passer à la dernière version de Gitea, il suffit de télécharger et de remplacer le binaire.

  1. Arrêtez le service Gitea :

    sudo systemctl stop gitea
  2. Téléchargez la dernière version de Gitea et déplacez-la vers le /usr/local/bin annuaire:

    VERSION=wget -O /tmp/gitea https://dl.gite.io/gitea/$VERSION/gitea-$VERSION-linux-amd64sudo mv /tmp/gitea /usr/local/bin
  3. Rendez le binaire exécutable :

    sudo chmod +x /usr/local/bin/gitea
  4. Redémarrez le service Gitea :

    sudo systemctl redémarrer gitea

C'est ça.

Conclusion #

Ce tutoriel vous a guidé à travers l'installation de Gitea sur Ubuntu 20.04. Pour plus d'informations sur la configuration de votre instance Gitea et la création de votre premier projet, visitez la page de documentation Gitea .

Si vous avez des questions, n'hésitez pas à laisser un commentaire ci-dessous.

Comment afficher le compteur FPS dans les jeux Linux
Les jeux Linux ont reçu une impulsion majeure lorsque Valve a annoncé la prise en charge de Linux pour le client Steam et leurs jeux en 2012. Depuis l...
Comment télécharger et jouer à Civilization VI de Sid Meier sur Linux
Présentation du jeu Civilization 6 est une version moderne du concept classique introduit dans la série de jeux Age of Empires. L'idée était assez sim...
Comment installer et jouer à Doom sur Linux
Introduction à Doom La série Doom est née dans les années 90 après la sortie du Doom original. Ce fut un succès instantané et à partir de ce moment-là...