Gitea est une plateforme gratuite et légère pour héberger des dépôts Git sur ton propre serveur, avec des pull requests, des tickets et un wiki. GitHub Team facture chaque compte supplémentaire dans une organisation, GitLab Premium fait de même, et une agence qui travaille avec plusieurs clients paie plusieurs fois pour le même dépôt, car chaque client veut sa propre organisation. Gitea est un serveur Git open source que tu installes sur ta propre Box, et tu obtiens un navigateur de code, des pull requests, des tickets et un wiki pour chaque dépôt. Le nombre d'utilisateurs et de dépôts est illimité. Voici, étape par étape, comment installer Gitea sur Saplo.
Pourquoi Gitea plutôt que GitHub ou GitLab
Stocker son code dans le cloud d'un tiers est logique tant que l'équipe est petite, mais les problèmes augmentent avec le nombre de comptes :
- GitHub Team et GitLab Premium facturent chaque utilisateur de l'organisation sur une base mensuelle. Ainsi, un développeur supplémentaire ou un nouveau client d'agence représente une ligne de plus sur la facture, même s'il n'utilise le système qu'une fois par semaine.
- Les référentiels privés des clients hébergés dans un cloud tiers sont des données hors de votre contrôle, ce qui peut poser problème avec les accords de confidentialité.
- Une agence gérant plusieurs clients crée une organisation distincte pour chacun, et chaque organisation est un compteur de places séparé.
Gitea fonctionne comme un conteneur Docker unique sur ta Box, tu peux donc créer un nombre illimité de référentiels, l'administrateur ajoute les comptes utilisateurs manuellement, et le coût total est celui de la Box elle-même, que l'équipe compte deux ou vingt personnes.
Gitea, GitHub et GitLab
Les trois offrent un navigateur de code, des pull requests et des tickets, la différence réside dans l'emplacement des données et le coût par compte supplémentaire :
- GitHub est la plus grande communauté et offre le plus d'intégrations, mais les organisations privées paient pour chaque compte, et le code des clients est stocké sur les serveurs de Microsoft,
- GitLab y ajoute un CI/CD intégré, au prix d'une consommation de ressources encore plus importante si tu l'héberges toi-même, et le plan Premium avec toutes les fonctionnalités facture également par utilisateur,
- Gitea est plus léger que les deux, il démarre comme un seul conteneur au lieu de toute une pile de microservices, et tu peux créer un nombre illimité de dépôts et de comptes sur ta propre Box.
Si l'équipe ou l'agence n'a pas besoin de CI/CD intégré ni d'une énorme communauté de projets publics, mais uniquement d'un espace pour le code de ses clients sous son contrôle total, Gitea est le mieux adapté.
Exigences
Pour installer Gitea sur Saplo, tu as besoin de :
- Une Box avec Docker activé (le moteur l'active automatiquement lors de l'installation depuis le catalogue, la virtualisation imbriquée est requise dans le conteneur, ce que Saplo propose par défaut),
- Un minimum de 512 Mo de RAM disponible sur la Box et 5 Go d'espace disque, ce qui signifie que le plan Box S à 27 € par an est suffisant,
- Un domaine ou sous-domaine
*.saploapp.plinclus dans le prix de chaque plan, sur lequel le Panneau Gitea sera installé, - Tu ne crées PAS de base de données séparée manuellement - le moteur crée automatiquement une base de données MySQL et la connecte au conteneur, tout comme avec WordPress ou Ghost.
Installation étape par étape
- Dans le Panneau Saplo, accède au Catalogue d'applications et sélectionne Gitea (catégorie "Business").
- Indique une Box avec un minimum de 512 Mo de RAM disponible, sur laquelle le serveur Git doit être installé, ainsi qu'un domaine ou un sous-domaine sous lequel le Panneau fonctionnera.
- Confirme l'installation. Le moteur installe le conteneur à partir de l'image officielle
gitea/gitea, crée une base de données MySQL, ignore l'assistant d'installation web et crée immédiatement un compte administrateur avec un mot de passe aléatoire, connecté à nginx, qui sert le Panneau sous le domaine spécifié avec un SSL gratuit. - Après
docker compose up, le moteur attend que Gitea termine la Migration du schéma de la base de données avant de tenter de créer le compte administrateur, et vérifie que le conteneur fonctionne réellement avant de considérer l'installation comme terminée. - Les identifiants de connexion de l'administrateur (login, mot de passe) sont enregistrés dans le fichier
GITEA-SETUP.txtdans le répertoire de l'application.
Première configuration
- Rends-toi à l'adresse du domaine, par exemple
kod.saploapp.pl, et connecte-toi avec l'identifiantadminet le mot de passe du fichierGITEA-SETUP.txt. - Change ton mot de passe immédiatement après la première connexion (icône du compte en haut à droite, Paramètres, Compte).
- L'inscription publique est désactivée - tu ajoutes de nouveaux utilisateurs manuellement dans Site Administration, Users, Create User Account, de la même manière que dans Ghost ou Listmonk, car il s'agit d'un outil d'équipe privé, et non d'un service public.
- Crée ton premier dépôt (New Repository), clone-le à l'adresse du domaine via HTTPS et pousse ton premier commit - le serveur SSH intégré est désactivé, le clonage et le push ne fonctionnent qu'en HTTPS.
- Pour les dépôts des clients, tu peux créer une organisation distincte (Create Organization) et n'y ajouter que les utilisateurs qui doivent y avoir accès.
Gitea sur Saplo vs GitHub Team et GitLab Premium
| GitHub Team | GitLab Premium | Gitea sur Saplo | |
|---|---|---|---|
| Frais pour un utilisateur supplémentaire | oui | oui | non |
| Limite de dépôts privés | aucune | aucune | aucune |
| Où se trouve le code | sur les serveurs de GitHub | sur les serveurs de GitLab | sur votre Box |
| CI/CD intégré | les actions GitHub sont payantes séparément après la limite | oui, inclus dans le prix du plan | non, un runner séparé est nécessaire |
| Prix | à partir de 4 USD par utilisateur et par mois | à partir de 29 USD par utilisateur et par mois | le prix de la Box elle-même |
Questions fréquentes
Est-il possible de cloner des dépôts via SSH ? Non, l'accès à Gitea sur Saplo se fait uniquement via HTTPS. Le serveur SSH intégré est désactivé, car Saplo n'expose pas le port 22 des applications clientes à l'extérieur.
Chacun peut-il créer son propre compte ? Non, l'enregistrement public est désactivé. Les nouveaux comptes sont créés manuellement par l'administrateur dans le Panneau d'Administration du Site.
Gitea a-t-il une intégration CI/CD comme GitLab ? Pas dans cette installation. Gitea se concentre sur les dépôts, les pull requests, les tickets et le wiki. Pour l'automatisation des builds, un runner séparé ou un outil externe est nécessaire.
Est-il possible de migrer des dépôts existants depuis GitHub ou GitLab ? Oui, Gitea dispose d'un importateur de dépôts intégré à partir d'une URL. Il suffit de fournir le lien vers le dépôt source et les informations d'accès s'il est privé.
Si ton équipe ou ton agence paie actuellement pour des comptes supplémentaires sur GitHub ou GitLab et souhaite avoir un contrôle total sur le code de ses clients, écris-nous, nous t'aiderons à choisir le Box adapté à ton équipe.
- #DevOps
- #Git
- #Gitea
- #Guide
