Forgejo : héberger son propre Git en 10 minutes

La question qui m'a rattrapé un soir

J'ai 24 repos sur GitHub. Le code, les configs, les agents, les skills. Tout ce qui fait tourner Synoptia au quotidien.

Un soir, la question m'a rattrapé : qu'est-ce qui se passe si GitHub tombe ? Ou si mon compte est suspendu ? Ou si Microsoft décide de changer les règles ?

Réponse : je perds tout.

Mon code, c'est mon actif. Mes automatisations, mes configurations d'agents, mes skills personnalisés. Tout ça vit dans des repos Git. Et tout ça était hébergé sur un seul service, dans un seul pays, chez un seul fournisseur.

Forgejo, c'est quoi ?

Forgejo, c'est GitHub mais à vous. Un serveur Git open source, gratuit, que vous hébergez sur votre propre machine.

Concrètement :

  • Une interface web pour naviguer dans vos repos (comme GitHub)
  • Des Pull Requests, des issues, un wiki
  • Une gestion d'utilisateurs et de permissions
  • Le tout en auto-hébergé : vos données restent chez vous

Forgejo est un fork de Gitea, lui-même inspiré de Gogs. C'est maintenu par une communauté active, sous licence MIT. Pas de piège, pas de version "enterprise" qui verrouille les fonctionnalités.

Installation en 10 minutes

L'installation tient en un fichier docker-compose.yml. Voici les grandes étapes :

  1. Un serveur : un VPS à 5 EUR/mois suffit (OVH, Hetzner, Scaleway). Ou un NAS, ou un vieux PC dans un placard
  2. Docker installé : deux commandes sur Ubuntu/Debian
  3. Le fichier docker-compose : copiez le modèle officiel, ajustez le port et le mot de passe
  4. Lancez : docker compose up -d

Le fichier docker-compose minimal :

version: "3"
services:
  forgejo:
    image: codeberg.org/forgejo/forgejo:latest
    container_name: forgejo
    ports:
      - "3000:3000"
      - "222:22"
    volumes:
      - ./data:/data
    restart: always

C'est tout. Vous avez votre propre GitHub, accessible depuis n'importe où si vous configurez un nom de domaine (un tunnel Cloudflare gratuit fait l'affaire).

Le mirror automatique : zéro effort, zéro perte

L'idée n'est pas de quitter GitHub. C'est d'avoir un plan B.

Chaque nuit à 3h30, un script copie automatiquement mes 24 repos GitHub vers mon Forgejo. Mirror complet : branches, tags, historique. Si GitHub disparaît demain matin, je n'ai rien perdu.

Le script de mirror (à mettre en cron) :

#!/bin/bash
REPOS="repo1 repo2 repo3"
GH_USER="votre-user-github"
FORGEJO_URL="http://localhost:3000"

for repo in $REPOS; do
  if [ -d "/tmp/mirror-$repo" ]; then
    cd "/tmp/mirror-$repo" && git remote update
  else
    git clone --mirror "https://github.com/$GH_USER/$repo.git" "/tmp/mirror-$repo"
  fi
  cd "/tmp/mirror-$repo"
  git push --mirror "$FORGEJO_URL/$GH_USER/$repo.git"
done

Ajoutez-le en cron : 30 3 * * * /home/user/mirror.sh (chaque nuit à 3h30).

Mais ça marche aussi dans l'autre sens. Mon assistant IA push du code directement sur mon Forgejo. Mes données restent chez moi, sur ma machine, sans passer par un serveur américain.

Pourquoi c'est important pour un entrepreneur

Si votre business repose sur du code ou des automatisations, votre code c'est votre actif. Et un actif, ça se protège.

Voici les scénarios contre lesquels Forgejo vous protège :

  • GitHub en panne : ça arrive. Ces dernières années, plusieurs pannes majeures ont bloqué des millions de développeurs pendant des heures
  • Compte suspendu : une erreur de facturation, un signalement abusif, un changement de politique. Votre code est pris en otage
  • Changement de politique : Microsoft possède GitHub. Les conditions d'utilisation peuvent évoluer, surtout sur l'utilisation de votre code pour entraîner des modèles IA
  • Conformité RGPD : pour certaines organisations (collectivités, santé), héberger du code sur des serveurs américains pose question

En pratique : comment je l'utilise

Mon setup Forgejo au quotidien :

  • Hébergement : sur ma DreamQuest (mini-PC), avec un tunnel Cloudflare pour l'accès distant
  • Mirror : cron chaque nuit, 24 repos synchronisés
  • Push direct : mes agents IA (Zézette, Katia) pushent directement sur Forgejo. Le code sensible ne passe jamais par GitHub
  • Backup : un tar czf hebdomadaire du dossier data/

Forgejo, c'est 3 choses :

  1. Une copie de sécurité de tout votre code
  2. Un serveur Git que vous contrôlez à 100%
  3. La tranquillité de ne dépendre de personne

GitHub reste mon outil principal. Mais Forgejo est mon filet. Et un filet, ça ne sert à rien jusqu'au jour où ça vous sauve.

Par où commencer

Si vous hébergez du code ou des configurations sur GitHub :

  1. Évaluez votre risque : combien de repos avez-vous ? Que se passe-t-il si vous perdez l'accès demain ?
  2. Installez Forgejo : un VPS à 5 EUR/mois, Docker, 10 minutes
  3. Configurez le mirror : un cron qui tourne chaque nuit

Si vous utilisez Claude Code, vous pouvez lui demander de tout configurer pour vous. L'installation, le tunnel, le cron de synchronisation. En 30 minutes, c'est réglé.

Vous voulez protéger votre code et mettre en place votre propre infrastructure Git ? Réservez un audit gratuit de 30 minutes et on regarde ensemble ce qui fait sens pour votre situation.


Pour aller plus loin

Envie d'en parler ?

30 minutes pour identifier ensemble vos leviers d'IA les plus rentables. Gratuit, sans engagement.

Prendre rendez-vous

Questions fréquentes

Forgejo remplace-t-il GitHub ?

Non. GitHub reste excellent pour la collaboration, les Pull Requests et la visibilité open source. Forgejo est un filet de sécurité : une copie complète de votre code, hébergée chez vous, qui prend le relais si GitHub est indisponible.

Faut-il un serveur dédié pour Forgejo ?

Non. Un VPS à 5 euros par mois suffit, ou même un NAS ou un vieux PC. Forgejo consomme très peu de ressources. L'installation se fait en un fichier docker-compose.

Comment synchroniser GitHub et Forgejo automatiquement ?

Avec un script cron qui tourne chaque nuit. Il clone ou met à jour chaque repo GitHub vers votre Forgejo. Le mirror est complet : branches, tags, historique. Si vous utilisez Claude Code, il peut le configurer pour vous en 5 minutes.

Besoin d'un accompagnement personnalisé ?

Audit gratuit de 30 minutes pour identifier vos leviers d'automatisation.

Prendre rendez-vous
Prendre RDV