GitHub@Home

On-prem GitHub Alternatives - Forgejo

A self-hosted lightweight software forge. Easy to install and low maintenance, it just does the job. - fork of Gitea

see also

# Releases ⮺

Can be used to host thirdpary binary assets to ease deployment with chezmoi

For public repos they are accessible to anyone (limited by LAN access here). Auth is only mendatory for private repos.

# Client Setup ⮺

Auto-reconnect with tunnel using autossh + user service

Details of systemd user service

# Systemd

# ~/.config/systemd/user/forgejo-tunnel.service
[Unit]
Description=SSH tunnel to Forgejo
After=network-online.target
Wants=network-online.target

[Service]
ExecStart=/usr/bin/autossh -M 0 -N -L 3000:127.0.0.1:3000 bastion

Restart=always
RestartSec=10

# Don't consider the service failed just because the laptop
# temporarily loses its network connection.
TimeoutStartSec=0

[Install]
WantedBy=default.target

Enable with

$ systemctl --user daemon-reload
$ systemctl --user enable --now forgejo-tunnel

Check

$ systemctl --user status forgejo-tunnel
$ journalctl --user -u forgejo-tunnel -f

# Setup ⮺

Performed by Hermes

cf Forgejo setup

Première connexion                                                                                                                        
                                                                                                                                          
Quand tu vas sur http://192.168.0.80:3000, tu arrives sur la page d'installation. Tu devras :                                             
                                                                                                                                          
• Remplir les infos de base (URL déjà pré-remplie en http://localhost:3000 — change-la en http://192.168.0.80:3000 si tu veux)
• Créer le compte administrateur (premier user)                                                                                           
• La base de données PostgreSQL est déjà configurée (type, host, db, user, password), tu n'as rien à toucher                  
                                                                                                                                          
Mot de passe PostgreSQL est aussi dans /etc/systemd/system/forgejo.service si besoin.
Configs

# Configs

Fichier Rôle
/etc/systemd/system/forgejo.service Service systemd —Lance podman run avec toutes les options : network host, volumes, variables d’env (DB, UID, SSH désactivé, schéma).
/var/lib/forgejo/gitea/conf/app.ini Config Forgejo (générée par le formulaire d’installation)
/var/lib/forgejo/custom-s6-override/openssh/down Désactive le serveur SSH interne du container

# DB (Postgres)

  • Base : forgejo
  • Rôle : forgejo
  • Schéma : forgejo

# Forgejo Actions ⮺

# Jekyll

  • this can run in the background
Written on June 7, 2018, Last update on September 2, 2026
github at_home forgejo