Si, comme moi, vous rédigez pas mal de scripts pour tout un tas de choses, ou mieux encore si vous êtes développeur, vous vous êtes déjà demandé comment stocker et organiser tout ça ? Imaginez : vous modifiez un script PowerShell, mais vous voulez revenir à la version d’hier. Avec un serveur Git, c’est possible en 2 clics ! Avez-vous déjà pensé à vous doter de votre propre serveur Git ? C’est ce qu’on va voir aujourd’hui, puisque je vais vous montrer comment installer Gitea, un serveur Git open source sur un NAS Asustor.
Pourquoi auto-héberger son Git ?
Si vous utilisez GitHub ou GitLab, que ce soit chez vous ou au travail, vous savez déjà à quel point Git est un outil indispensable de nos jours. Mais dépendre d’un service cloud n’est pas toujours le top : entre les capacités de stockage qui sont parfois limitées, la disponibilité et la vitesse de votre connexion internet, la question de la sauvegarde et les potentiels soucis de confidentialité… Cela peut bien évidemment freiner un peu. Mieux vaut être maître en son royaume, vous en conviendrez !
Je vous propose donc aujourd’hui d’installer votre propre serveur Git à la maison, et, pour cela, on va utiliser un NAS Asustor et la solution Gitea. Et vous allez voir, la mise en place ne prendra pas plus de 15 minutes !
🟢 Cas d’usage
Ce tuto est fait pour vous si :
- Vous avez des scripts épars et voulez les centraliser.
- Vous travaillez en équipe sur des projets perso.
- Vous voulez un backup automatisé de votre code.
Pourquoi choisir Gitea ?
Pourquoi donc partir sur la solution Gitea ? Tout d’abord, Gitea est une solution légère qui ne nécessite pas beaucoup de ressources pour fonctionner. Ensuite parce qu’il s’agit d’un produit open source, facile à installer et à utiliser. Notez également que Gitea n'est peut-être pas aussi complet que GitHub ou GitLab, mais, pour une utilisation personnelle à la maison, il fera largement le boulot. Et enfin, il est intéressant de mentionner que Gitea est directement disponible comme application dans AppCentral, le magasin d’applications Asustor et donc que cela n’en sera que plus facile à installer !
Voici un comparatif entre Gitea et les deux autres solutions les plus populaires (GitHub et GitLab) :
Comparatif des serveurs Git
| Critères | Gitea | GitHub | GitLab CE |
|---|---|---|---|
| Ressources | Très leger | Cloud (pas d'auto-hebergement) | Lourd |
| Installation | Simple (docker) | n/a | Complexe |
| Fonctionnalités | Essentielles | Complètes | Complètes (CI/CD) |
| Public cible | Petits et moyens projets | Tous publics | Entreprises |
Vous l'aurez donc compris, Gitea est idéal pour :
- Les développeurs solos ou les petites équipes
- Les projets personnels ou open source
- Les environnements avec des ressources limitées (comme par exemple les NAS)
Les prérequis
Pour ce tutoriel, je me suis appuyé sur un NAS Asustor (un Nimbustor 4 Gen2) mais j'aurais pu le faire sur n'importe quel autre NAS, même le modeste AS1202T que je vous ai présenté récemment. La seule condition, c'est que le NAS supporte Docker. Et si vous n’avez pas de NAS, vous pourrez quand même déployer votre Gitea sur une n’importe quelle machine pouvant faire tourner Docker.
Ensuite, on va bien évidemment avoir besoin d’un accès administrateur sur le NAS, de quelques notions basiques sur l’outil Git.
Enfin, pour aller plus loin dans cet article, on va avoir besoin d’un éditeur de code : pour ma part, je vais utiliser Visual Studio Code.
Installation de Gitea, pas à pas.
Étape 1 : Installation de Gitea
Docker est un prérequis obligatoire pour faire tourner Gitea sur le NAS . Mais pas besoin de l'installer au préalable : si ce prérequis n'est pas installé, l'installation du package Gitea l'installera automatiquement. Cliquez donc sur l'icône AppCentral présente sur le bureau du NAS.
Sélectionnez ensuite sur l'entrée Toutes les applications dans le menu de gauche, puis recherchez Gitea dans la zone de recherche en haut à droite. Cliquez simplement sur le bouton Installer. Au moment où je rédige ce tutoriel, c'est la version 1.25.2 qui est disponible dans AppCentral.
Une nouvelle fenêtre s'ouvre. Celle-ci vous informe que Gitea va être installé, et éventuellement que docker-ce sera installé (si vous en l'avez pas déjà installé). Cochez la case Activer la redirection de port... si vous souhaitez pouvoir vous connecter à votre Gitea depuis l'extérieur, puis cliquer de nouveau sur Installer.
Puis patientez pendant que l'application Gitea s'installe. Une fois l'installation terminée le statut Installé apparaît et une icône Gitea est ajoutée sur le bureau du NAS. Place maintenant à la configuration !
Étape 2 : Configuration de Gitea
La configuration de Gitea se fait au premier lancement. Cliquez donc sur l'icône Gitea présente sur le bureau du NAS pour ouvrir l'interface de l'application.
Une nouvelle fenêtre de votre navigateur s'ouvre alors. Celle-ci va vous permettre de faire la configuration de votre serveur Gitea. La première chose à paramétrer, c'est le type de base de données que vous allez utiliser. Plusieurs choix s'offrent à vous : MySQL, PostgreSQL, MSSQL, SQLite3 ou TiDB. Voici quelques conseils pour vous aider à choisir votre base de données en fonction de votre contexte :
- SQLite3 : pour un usage personnel avec quelques dépôts. Dans ce cas, rien à installer, cela se fera tout seul.
- MySQL ou PostgreSQL : pour une utilisation intensive, soit utilisation par une équipe, soit plusieurs dizaines, voire centaines de dépôts. Si vous choisissez cette option, vous devrez vous raccorder à un serveur de base de données. Si vous n'en avez pas, vous pouvez en installer un sur le NAS depuis AppCentral !
Pour ma part, étant donné que j'utilise Gitea pour mes modestes besoins persos, j'ai opté pour une base SQLite3. Si vous optez pour le même type de base de données que moi, vous aurez la possibilité de choisir l'emplacement où elle sera stockée. Par défaut, cela sera dans /data/gitea/gitea.db sachant que sur le NAS le /data/ correspond à /volume1/Docker/Gitea/.
Dans la suite de la configuration, vous êtes invités à donner un nom à votre site Gitea. Pour ma part, j'ai modestement appelé le mien JusteGit ! 😀
Vous pouvez ensuite modifier l'arborescence de vos dépôts. Par défaut, l'installation propose /data/git/repositories/.
Ensuite, dans les réglages importants, vous trouverez le Domaine du serveur et le Port d'écoute HTTP de Gitea, ainsi que l'URL de base de Gitea, que vous pouvez renseigner à votre guise.
Viennent ensuite les paramètres facultatifs, tels que :
- Les paramètres de messageries, à renseigner si vous souhaitez envoyer des mails depuis votre serveur Gitea
- Les paramètres Serveur et Tierce Parties : comme par exemple l'utilisation de Gravatar, de CAPTCHA ou encore l'algorithme de hachage des mots de passe
- Les paramètres du compte administrateur : Si vous ne créez pas d'administrateur, le premier compte créé sera alors administrateur
Une fois que vous avez renseigné ce qui vous est nécessaire, cliquez sur le bouton Installer Gitea et patientez ! En fonction du modèle de votre NAS cela peut prendre 2 ou 3 minutes. Une fois l'installation terminée, vous êtes amenés à créer votre premier compte (dans le cadre de ce tutoriel, je n'avais pas créé de compte administrateur et c'est donc le compte que je m'apprête à créer qui sera le maître des lieux. Renseignez donc les différents champs demandés et cliquez sur Créer un compte.
Et voilà, le serveur Gitea est installé et prêt à l'emploi !
Premiers pas avec Gitea
Découverte de l'interface
L'interface de Gitea est assez simple à prendre en main. Tout d'abord, l'icône Gitea que vous avez en haut à gauche permet de revenir à la page d'accueil. À sa droite, vous retrouvez un menu avec les entrées suivantes : Tickets, Demandes d'ajout, Jalons et Explorateur. En haut à droite, vous retrouvez une icône pour les notifications, une autre renvoyant à l'administration du site, un bouton "+" pour créer de nouveaux éléments (dépôt, migration ou organisation) et un menu utilisateur pour gérer le compte avec lequel vous êtes connecté. Dans le corps de la fenêtre, vous apercevez les infos d'activités et vous visionnez les dépôts et organisations.
Bon, comme on vient de débarquer, c'est vide. On va donc commencer par créer un dépôt.
Création d'un dépôt
Pour créer un dépôt, cliquez sur l'icône + en haut à droite, puis sur Nouveau dépôt.
Renseignez ensuite toutes les informations nécessaires pour la création du dépôt, telles que son nom, son propriétaire, sa visibilité, etc.
Après avoir validé la création, on est directement redirigé sur la page du dépôt. À partir de là, on va pouvoir créer un nouveau fichier directement depuis la page du dépôt, ou bien importer un fichier existant. Pour ma part, je vais importer un fichier existant en appuyant simplement sur le bouton Téléverser un fichier.
Dans mon exemple, je vais me contenter de déposer un script basique qui déplace les photos RAW d'un dossier dans un sous-dossier. Dans la fenêtre de téléversement qui s'affiche, il est possible de créer un dossier dans le dépôt (1️⃣). Cela peut être intéressant pour bien organiser ses scripts/développements. Pour ma part, je vais créer un dossier Photos qui contiendra tous mes scripts relatifs à mes photos. Ensuite, vous disposez d'une zone pour déposer votre fichier, soit via glisser-déposer, soit en explorant votre disque (2️⃣). Enfin, il est possible de mettre un commentaire si l'on souhaite (3️⃣), afin de décrire globalement le script, le projet... Puis il suffit de cliquer sur Réviser les changements.
Une fois validé, on revient sur notre dépôt, dans lequel on voit désormais la liste des fichiers.
En cliquant sur un fichier, on accède à son contenu. À partir de là, il est possible de télécharger le fichier, le modifier directement dans Gitea, le copier ou même le supprimer (en utilisant les icônes au-dessus du pointeur de ma souris dans la capture ci-dessous).
Utiliser Gitea directement depuis son interface web, c'est bien, mais l'intégrer à son IDE c'est mieux. Alors, voyons maintenant un exemple d'utilisation avec Visual Studio Code.
Utiliser Gitea avec Visual Studio Code
Bon je ne vais pas vous expliquer comment installer Visual Studio Code, je vais partir de l'hypothèse que vous l'utilisez déjà. Si ce n'est pas le cas, rendez-vous ici. Après avoir ouvert VSCode, la première chose à faire est de cloner le dépôt Gitea. Sauf que dans mon cas, mon serveur Gitea, hébergé sur mon NAS Asustor, utilise un certificat autosigné. Celui-ci est donc considéré par git comme non sûr. Je vais donc au préalable désactiver la vérification de certificat pour git. Si vous utilisez le certificat par défaut d'Asustor, vous devrez effectuer cette manipulation. Cliquez donc sur Terminal puis sur New Terminal.
Dans le terminal qui s'ouvre en bas de la fenêtre VS Code, saisissez la commande ci-dessous :
git config --global http.sslVerify false
Voilà, on peut maintenant cloner notre repo Gitea ! Dans la partie Explorer, cliquez sur le bouton Clone Repository.
Renseignez l'adresse de votre repo dans la fenêtre qui s'ouvre et validez avec la touche entrée de votre clavier, tout simplement.
Visual Studio Code va alors vous demander de sélectionner un dossier local sur votre machine pour cloner le repo. Pour ma part j'ai créé un dossier 'gitea_test' dans Mes Documents. Une fois que vous êtes dans le dossier de destination, cliquez sur Select as Repository Destination
VSCode va alors tenter de se connecter au repo pour le cloner. Une fenêtre va alors s'ouvrir automatiquement sur votre navigateur pour vous inviter à vous authentifier à votre Gitea. Renseignez alors votre compte.
Une fois authentifié, vous apercevrez une fenêtre vous demandant d'autoriser la connexion à votre Gitea. Il s'agit bien évidemment d'autoriser VS Code. Vous pouvez donc cliquer sur le bouton Autoriser l'application.
Retourner maintenant dans VS Code où l'application vous demandera si vous souhaitez ouvrir le dépôt. Cliquez simplement sur Open. Puis une nouvelle fenêtre apparaitra vous demandant si vous souhaitez faire confiance à l'auteur du dépôt. Bon, étant donné que c'est votre propre dépôt, je pense que vous pouvez vous faire confiance 🙂
Et voilà, vous avez maintenant accès à votre Gitea depuis VS Code. Vous pouvez d'ailleurs voir dans la capture ci-dessous que je récupère bien mon script déposé plus tôt dans ce tutoriel.
Vous pouvez désormais modifier vos scripts, en créer, en ajouter, puis synchroniser le tout sur votre Git personnel !
Prochaines étapes
Vous voilà maintenant équipé d’un serveur Git personnel, léger et puissant, directement hébergé sur votre NAS Asustor. Maintenant que votre Gitea est opérationnel, vous pouvez :
- Automatiser des sauvegardes (ex: script pour copier
/volume1/Docker/Gitea). - Explorer les fonctionnalités avancées (Wiki, Kanban, CI/CD).
- Inviter des collaborateurs (via l’onglet Utilisateurs).
Et vous, allez-vous sauter le pas ? Dites-le en commentaire, et partagez vos retours !
