Gitea
v1.25.5
Lightweight self-hosted Git service with web interface
What's included
- Gitea 1.25.5 (fully configured, ready to use)
- Built-in HTTPS via Let's Encrypt (for domain names)
- SQLite by default, PostgreSQL and MySQL optional
- Git SSH access on port 22
- Systemd service with auto-restart
After install
- Login at the URL shown with admin credentials
- No setup wizard exposed to the internet
- Create repositories and invite collaborators
- Custom domain: GITEA_HOST=git.example.com
- PostgreSQL: GITEA_DB_TYPE=postgres
How the install works
Generated from the install script itself -- these are the exact phases it runs on your server.
- 1.Pre-flight checks
- 2.Opening firewall
- 3.Installing system dependencies
- 4.Installing Git
- 5.Creating git user
- 6.Installing Gitea
- 7.Creating directory structure
- 8.Setting up database
- 9.Configuring Gitea
- 10.Initializing database
- 11.Creating admin user
- 12.Creating systemd service
Supported Operating Systems
Ubuntu 24Ubuntu 25Debian 12Debian 13Rocky 9Rocky 10Alma 9Alma 10
Requirements
- RAM
- 512MB minimum
- Disk
- 5GB minimum
Configuration
| Variable | Default | Description |
|---|---|---|
| GITEA_HOST | server hostname | Domain name or IP. Domains get built-in HTTPS via Let's Encrypt. |
| GITEA_ADMIN_USER | admin | Gitea admin username |
| GITEA_ADMIN_PASS | random 24-char | Gitea admin password |
| GITEA_ADMIN_EMAIL | admin@hostname | Gitea admin email |
| GITEA_DB_TYPE | sqlite3 | Database backend: sqlite3, postgres, or mysql |
| GITEA_DB_PASS | random 24-char | Database password (only used with postgres or mysql) |
5 installsOfficial website →
Changelog
v1.0.02026-04-02
- Initial release with built-in HTTPS via Let's Encrypt
- SQLite default, PostgreSQL and MySQL optional
- CLI-based admin setup (no web wizard exposed)
- Systemd service with auto-restart
- Git SSH access on port 22