Développement

Héberger Gitea sur un VPS : votre forge Git auto-hébergée, sans usine à gaz

Votre forge Git personnelle, légère et complète — un GitHub privé qui tient sur le plus petit VPS.

Remplace
GitHub, GitLab
RAM conseillée
1 Go
Docker
Oui
Budget VPS
≈ 4–5 €/mois
Difficulté
Accessible
En bref

Gitea est l'une des applications auto-hébergées les plus légères : le binaire consomme à peine ~150 Mo de RAM avec sa base SQLite intégrée, et tourne sur le plus petit VPS (512 Mo à 1 Go) pour 4 à 5 €/mois. C'est un GitHub privé complet — dépôts, pull requests, wiki, et même de la CI/CD avec Gitea Actions. Prévoyez surtout de l'espace disque selon la taille de vos dépôts. Le fork communautaire Forgejo, 100 % compatible, est une alternative à connaître.

Gitea est une forge Git auto-hébergée : un service complet pour héberger vos dépôts de code, gérer les pull requests, suivre les tickets, tenir un wiki et même faire de l’intégration continue. C’est, en pratique, un GitHub privé que vous faites tourner sur votre propre serveur. Écrit en Go, livré sous forme d’un binaire unique, Gitea a une réputation méritée : c’est l’une des applications auto-hébergées les plus légères et les plus faciles à mettre en route, là où ses concurrents demandent une infrastructure conséquente.

Et c’est précisément ce qui le rend idéal pour un VPS loué à quelques euros. Pas besoin d’un serveur à la maison ni d’une machine surdimensionnée : Gitea se contente du plus petit modèle d’entrée de gamme, avec une IP publique fixe pour pousser votre code depuis n’importe où. Que vous soyez développeur solo voulant garder vos projets chez vous, ou une petite équipe cherchant à s’affranchir des licences par utilisateur, Gitea coche les cases sans alourdir la facture ni l’administration.

Configuration requise : combien de RAM pour Gitea ?

Configuration VPS requise
Processeur (CPU)1 vCPU
RAM minimale512 Mo
RAM conseillée1 Go
Stockage10–20 Go SSD (selon vos dépôts)
DockerOui (image officielle)
Base de donnéesSQLite intégrée (PostgreSQL/MySQL en option)
NiveauAccessible

Gitea est frugal, et c’est tout l’argument. Le binaire écrit en Go consomme autour de 150 Mo de RAM au repos, base de données SQLite intégrée comprise — pas de service externe à faire tourner pour démarrer. Concrètement, un VPS de 512 Mo fait tourner Gitea sans difficulté pour un usage personnel ou une petite équipe. Le palier 1 Go apporte du confort : marge pour le reverse proxy, le système, et surtout pour activer Gitea Actions (la CI/CD, dont le runner consomme un peu plus selon les jobs).

Le vrai facteur de dimensionnement n’est donc pas la mémoire, mais le stockage. La taille de vos dépôts dicte l’espace disque : du code source pur reste léger (quelques centaines de Mo pour des dizaines de projets), mais des dépôts contenant des binaires, des images Docker ou de gros historiques peuvent grimper. Comptez 10 à 20 Go pour démarrer confortablement, et prévoyez large si vous prévoyez beaucoup de dépôts ou des artefacts de build. Le CPU, lui, n’est jamais le goulot : un seul vCPU suffit pour servir Git en HTTPS et SSH.

À noter : il existe Forgejo, un fork communautaire de Gitea né en 2022 et porté par une association à but non lucratif. Il est entièrement compatible (mêmes fonctions, mêmes exigences minimes, migration directe depuis Gitea) et se déploie exactement de la même façon. Le choix entre les deux relève surtout de la gouvernance que vous préférez soutenir — côté ressources et installation, ils sont jumeaux. Si vous hésitez sur le dimensionnement plus largement, ce guide détaille les ordres de grandeur : combien de RAM pour s’auto-héberger.

Gitea ou GitLab auto-hébergé ?

C’est la comparaison qui revient le plus souvent, et la réponse est assez nette pour la cible de ce site. GitLab auto-hébergé est un poids lourd. Son édition Community embarque une multitude de services (Rails, PostgreSQL, Redis, Sidekiq, Nginx, Prometheus…) et l’éditeur recommande au minimum 4 Go de RAM — dans les faits, on est plus à l’aise avec 8 Go pour une instance qui ne rame pas. Sur un petit VPS à 5 €/mois, GitLab étouffe.

Gitea (et Forgejo) jouent dans une autre catégorie. Un seul binaire, ~150 Mo de RAM, une base SQLite intégrée : tout l’opposé de l’usine à gaz. Et pourtant, pour la grande majorité des usages, les fonctions sont là : dépôts illimités, pull requests avec revue de code, gestion des tickets et des jalons, wiki, releases, gestion d’organisations et d’équipes, webhooks, miroirs de dépôts, et depuis peu de la CI/CD intégrée.

Le verdict : pour un particulier ou une petite équipe, Gitea gagne. Vous obtenez 90 % de ce qu’offre GitLab pour une fraction des ressources et de la complexité d’administration. GitLab garde son intérêt pour les grandes organisations qui exploitent réellement ses fonctions DevOps avancées (registry intégré à grande échelle, gestion fine des permissions, conformité, déploiements complexes) et qui ont le budget serveur en conséquence. Si vous n’êtes pas dans ce cas, l’argument « je prends GitLab parce que c’est plus complet » se paie cher en RAM pour des fonctions que vous n’utiliserez pas.

Gitea Actions : de la CI/CD légère

Longtemps, le seul reproche fait à Gitea face à GitHub ou GitLab était l’absence de CI/CD intégrée. C’est réglé depuis la version 1.19 avec Gitea Actions, et c’est une vraie réussite : le système est compatible à environ 90 % avec GitHub Actions. En pratique, vous reprenez vos fichiers de workflow YAML quasiment tels quels — il suffit de les placer dans .gitea/workflows/ au lieu de .github/workflows/. La syntaxe (on, jobs, steps, uses, run…) est identique, et une bonne partie des actions de l’écosystème GitHub fonctionnent directement.

Le fonctionnement repose sur un runner séparé appelé act_runner. C’est un composant distinct que vous installez à côté de Gitea : il se connecte à votre instance, attend les jobs, et les exécute en lançant des conteneurs Docker dédiés (comme le ferait un runner GitHub auto-hébergé). Cette séparation est saine : votre forge reste légère et stable, et la charge variable des builds est isolée dans le runner, que vous pouvez même héberger sur une autre machine si vos pipelines deviennent gourmands.

Concrètement, cela permet de construire, tester et déployer automatiquement à chaque push : lancer une suite de tests, builder une image Docker, déployer un site statique, etc. — le tout entièrement chez vous, sans dépendre des minutes de CI facturées par les plateformes en ligne. Pour un VPS d’entrée de gamme, gardez à l’esprit que les builds consomment CPU et RAM le temps de leur exécution : si vous activez Actions sérieusement, le palier 1 Go (voire un peu plus pour des jobs lourds) est plus confortable que 512 Mo.

Combien coûte l’auto-hébergement de Gitea ?

Le coût se résume à celui du VPS, soit 4 à 5 €/mois pour un modèle 1 Go amplement suffisant. Gitea lui-même est gratuit et open source.

Mais soyons transparents sur l’alternative : GitHub est gratuit, y compris pour un nombre illimité de dépôts privés, avec une CI/CD généreuse pour les comptes individuels. Pour beaucoup de développeurs, c’est largement suffisant et il n’y a aucune urgence à héberger sa propre forge. Inutile de payer un VPS « pour faire comme les pros » si GitHub couvre déjà vos besoins.

Héberger Gitea devient réellement pertinent dans des cas précis :

  1. vous voulez tout garder chez vous — du code sensible, propriétaire ou personnel que vous préférez ne pas confier à un tiers, par principe ou par contrainte ;
  2. vous tenez à créer des miroirs de vos dépôts (Gitea peut répliquer automatiquement des dépôts depuis ou vers GitHub) pour ne plus dépendre d’une seule plateforme ;
  3. vous équipez une petite équipe : GitHub Team et GitLab Premium facturent par utilisateur, tandis qu’une instance Gitea accueille autant de comptes que vous voulez sans surcoût ;
  4. vous avez déjà un VPS pour d’autres applications : ajouter Gitea, vu sa légèreté, ne coûte quasiment rien de plus en ressources.

C’est exactement la logique de ce site : un seul VPS, plusieurs applications. Gitea trouve naturellement sa place à côté d’un outil d’automatisation, d’un gestionnaire de mots de passe ou d’un monitoring, sans peser sur la machine.

Quel hébergeur choisir pour Gitea ?

Quel hébergeur choisir ?

Gitea est minuscule : la plus petite offre VPS suffit. Prévoyez surtout de l'espace disque selon la taille de vos dépôts.

Hetzner

Le meilleur rapport puissance/prix

  • VPS CX22 : 2 vCPU, 4 Go RAM, 40 Go SSD
  • L'hébergeur favori de la communauté self-hosting
  • Datacenters en UE (conformité RGPD)
Config conseillée
2 vCPU / 4 Go / 40 Go SSD
Prix indicatif
≈ 4,50 €/mois
Docker
VPS complet — Docker à installer (ou image Coolify en 1 clic)
Voir les VPS Hetzner lien à brancher

Scaleway

Le déploiement Docker en 1 clic

  • Instances françaises, Docker InstantApp en 1 clic
  • Facturation à l'heure possible (tests)
  • Bon pour démarrer puis monter en puissance
Config conseillée
2 vCPU / 2–4 Go / 20+ Go
Prix indicatif
≈ 5–9 €/mois
Docker
Image Docker InstantApp en 1 clic
Voir les offres Scaleway lien à brancher

LWS

Le plus simple pour débuter (support FR)

  • VPS avec Docker préinstallé, clé en main
  • Support téléphonique en français
  • Bon point d'entrée pour les débutants
Config conseillée
2 vCPU / 4 Go / 40 Go SSD
Prix indicatif
≈ 4–6 €/mois
Docker
Docker préinstallé sur les VPS
Voir les VPS LWS lien à brancher

Transparence : les liens ci-dessus sont des liens partenaires (affiliation). Si vous souscrivez via l'un d'eux, ce site touche une commission, sans surcoût pour vous. Cela n'influence pas nos recommandations : nous ne citons que des hébergeurs adaptés à cette application. En savoir plus.

Le critère ici n’est pas la puissance — n’importe quel VPS d’entrée de gamme fait tourner Gitea les doigts dans le nez — mais le stockage et la fiabilité. Regardez l’espace disque inclus dans l’offre et la facilité d’ajouter du volume si vos dépôts grossissent. Pour une forge consultée au quotidien, une bonne disponibilité et une connexion réseau correcte comptent davantage que des vCPU supplémentaires. Un hébergeur européen a aussi du sens si votre code doit rester dans un cadre juridique de proximité. Côté installation, privilégiez un fournisseur qui rend Docker simple à mettre en place : Gitea se déploie alors en quelques minutes.

Installer Gitea sur un VPS avec Docker

Une fois votre VPS prêt avec Docker et le plugin Compose installés, créez un dossier puis un fichier docker-compose.yml. Voici une configuration réaliste, avec la base SQLite intégrée et les deux ports qui comptent — 3000 pour l’interface web et 2222 pour le Git en SSH :

services:
  gitea:
    image: gitea/gitea:1
    container_name: gitea
    restart: unless-stopped
    environment:
      USER_UID: "1000"
      USER_GID: "1000"
      GITEA__server__DOMAIN: "git.exemple.fr"
      GITEA__server__ROOT_URL: "https://git.exemple.fr/"
      GITEA__server__SSH_DOMAIN: "git.exemple.fr"
      GITEA__server__SSH_PORT: "2222"     # port SSH annoncé aux clients Git
    volumes:
      - ./gitea-data:/data
      - /etc/timezone:/etc/timezone:ro
      - /etc/localtime:/etc/localtime:ro
    ports:
      - "3000:3000"     # interface web
      - "2222:22"       # SSH Git (22 interne, exposé sur 2222 de l'hôte)

Le choix du port SSH mérite une explication : le port 22 de votre VPS est déjà occupé par le SSH système (celui qui vous sert à administrer la machine). On expose donc le serveur SSH de Gitea sur le port 2222 de l’hôte, mappé sur le port 22 interne du conteneur. La variable SSH_PORT indique à Gitea d’annoncer ce port 2222 dans les URL de clonage. Le volume ./gitea-data monté sur /data contient tout : dépôts, base SQLite, configuration. Tant qu’il existe, vous pouvez détruire et recréer le conteneur sans rien perdre — c’est aussi ce dossier à sauvegarder.

Lancez ensuite le conteneur :

docker compose up -d

Ouvrez http://IP_DU_VPS:3000 dans votre navigateur : un assistant d’installation s’affiche au premier lancement (vérifiez le type de base de données — SQLite — et l’URL de base, puis créez le compte administrateur). Comme pour tout service, n’exposez pas le port 3000 en clair sur Internet : placez un reverse proxy HTTPS devant. Avec Caddy, le certificat Let’s Encrypt est automatique :

git.exemple.fr {
    reverse_proxy localhost:3000
}

Une fois en HTTPS, ajoutez votre clé SSH publique dans les réglages du compte, créez un premier dépôt, et poussez votre code — en HTTPS via le reverse proxy, ou en SSH avec git@git.exemple.fr:user/depot.git (port 2222). Pensez à désactiver l’inscription publique dans la configuration si vous êtes seul ou en équipe fermée, pour que personne d’autre ne puisse créer de compte.


Gitea est l’une des briques les plus satisfaisantes à installer quand on débute l’auto-hébergement : utile, léger, et immédiatement opérationnel. Pour bien choisir la machine, consultez quel VPS choisir pour s’auto-héberger, et pensez à surveiller votre forge avec un monitoring sur un VPS externe afin d’être prévenu si elle tombe.

Questions fréquentes

Combien de RAM faut-il vraiment pour Gitea ?

Très peu. Le binaire Gitea consomme autour de 150 Mo de RAM au repos avec sa base SQLite intégrée. Un VPS de 512 Mo suffit pour un usage perso ou une petite équipe ; 1 Go offre du confort, surtout si vous activez Gitea Actions ou hébergez d'autres applications à côté. Le facteur dimensionnant est rarement la RAM, mais l'espace disque de vos dépôts.

Gitea ou GitLab, lequel choisir pour s'auto-héberger ?

Pour un particulier ou une petite équipe, Gitea gagne presque toujours. GitLab auto-hébergé est très lourd (4 Go de RAM minimum, souvent plus) car il embarque énormément de services. Gitea couvre 90 % des mêmes besoins (dépôts, PR, wiki, CI/CD) en tenant dans un seul conteneur de ~150 Mo. Réservez GitLab aux grandes organisations qui ont besoin de ses fonctions DevOps avancées.

Gitea peut-il faire de la CI/CD comme GitHub Actions ?

Oui, avec Gitea Actions, intégré depuis la version 1.19. La syntaxe est compatible à ~90 % avec GitHub Actions : vous reprenez vos fichiers de workflow YAML quasiment tels quels (dans .gitea/workflows/ au lieu de .github/workflows/). Il faut installer un runner séparé (act_runner) qui exécute les jobs dans des conteneurs Docker.

Ça vaut le coup vu que GitHub est gratuit ?

Soyons honnêtes : GitHub est gratuit, y compris pour les dépôts privés illimités, et reste parfait pour beaucoup de projets. Héberger Gitea devient pertinent si vous voulez tout garder chez vous (code sensible, indépendance totale), créer des miroirs de vos dépôts GitHub, équiper une équipe sans payer de licences par utilisateur, ou ajouter une forge à un VPS que vous payez déjà.

Qu'est-ce que Forgejo et faut-il le préférer à Gitea ?

Forgejo est un fork communautaire de Gitea, né en 2022, géré par une association à but non lucratif (Codeberg e.V.). Il est compatible avec Gitea : mêmes fonctions, migration directe, même légèreté. Le choix est surtout philosophique (gouvernance communautaire pour Forgejo). Les deux tournent à l'identique sur un petit VPS — vous ne vous tromperez pas.

Puis-je utiliser Git en SSH avec Gitea ?

Oui, c'est le mode recommandé pour pousser du code. Gitea expose un serveur SSH (souvent sur le port 22 de l'hôte, ou un port dédié comme 2222 si le SSH système occupe déjà le 22). Vous ajoutez votre clé publique dans l'interface, puis vous clonez en git@votredomaine.fr:user/depot.git. Le HTTPS via le reverse proxy reste disponible en parallèle.