Gitea
Un servicio Git autohospedado sin dolor — como GitHub, pero tuyo.
Gitea es un servicio Git autohospedado ligero escrito en Go. Se ve y funciona como GitHub — repos, pull requests, issues, integración CI, code review, releases — pero corre como un binario único o un contenedor Docker de 100MB. Usado por desarrolladores individuales, proyectos OSS y empresas que no quieren su código en la nube de otros.
Desplegar con Pier
- 1 Abre el panel de Pier y haz clic en Add service.
- 2 Elige Gitea en la lista de plantillas.
- 3 Elige la versión, asigna un nombre al servicio y Pier provisionará automáticamente el contenedor, el almacenamiento y los puertos.
- 4 Vincula un dominio si quieres HTTPS. Traefik genera el certificado de Let's Encrypt automáticamente.
¿Qué es Gitea?
Gitea es un servicio Git autohospedado, ligero y desarrollado por la comunidad. Se ve y se comporta como GitHub — repos, pull requests, issues, milestones, releases, code review con comentarios inline, branch protection — pero corre como un único contenedor Docker de ~100 MB en un VPS de $5/mes. Originalmente forkeado de Gogs en 2016, ahora tiene una comunidad próspera y un feature set enterprise-grade que incluye Actions (CI/CD), registries de paquetes, mirroring de código, integraciones LDAP/OAuth/SSO y soporte de webhooks.
Para individuos y equipos que no quieren su código en la nube de otros — o están cansados de pagar fees por asiento — Gitea es la elección por defecto. Escala desde un desarrollador con un repo de side-project privado hasta organizaciones con miles de usuarios y decenas de miles de repos.
Cómo lo despliega Pier
Pier usa la imagen Docker oficial gitea/gitea con /data montado como
volumen persistente — contiene la base SQLite (backend por defecto), los
repos Git, attachments y configuración. El puerto por defecto es 3000/tcp
para HTTP. Pier autogenera la contraseña inicial de admin durante el setup.
Para un despliegue más pesado con backend PostgreSQL, usa la plantilla
gitea-postgresql — provisiona Gitea + un contenedor PostgreSQL dedicado
en un mismo stack Docker Compose.
Para HTTPS, adjunta un dominio — Traefik maneja la emisión del cert y el
ROOT_URL de Gitea se setea automáticamente desde el header
X-Forwarded-Host.
Cuándo NO usar Gitea
Para DevSecOps completo con scanning de vulnerabilidades, scanning de
contenedores y visualización integrada de pipeline CI/CD — GitLab CE es
más completo (pero mucho más pesado). Para workflows minimalistas
email-driven — sr.ht. Para proyectos hobby/de una persona — git directo
sobre SSH en un servidor puede ser todo lo que necesitas.
Características clave
UI estilo GitHub
UI web para repos, branches, PRs, issues, milestones, releases, wikis. Si has usado GitHub, ya sabes Gitea.
Binario único, bajos recursos
Imagen Docker de ~100 MB, corre cómodamente en un VPS de 1 GB. Backends SQLite, MySQL/MariaDB o PostgreSQL — elige tu almacenamiento.
Actions (CI/CD)
Gitea Actions es compatible con GitHub Actions — la mayoría de actions/* y community actions simplemente funcionan. Corre runners en contenedores vía la imagen gitea/act_runner.
Code review y PRs
Pull requests con comentarios inline, hilos de review, reviewers requeridos, estrategias de merge (merge / rebase / squash), branch protection, code owners.
Registry de paquetes
Registries integrados para npm, Maven, NuGet, PyPI, Cargo, Composer, RubyGems, Helm, Docker, Pub, Conan, Generic. Reemplaza un Verdaccio/Nexus aparte.
Integraciones multi-auth
Cuentas locales, LDAP, SMTP, OAuth2 (Google, GitHub, GitLab, Discord, Azure AD, OIDC custom), SSPI, PAM. Auto-link vía JIT provisioning.
Casos de uso
Servidor Git privado de equipo
Hospeda el código de tu equipo sin pagar GitHub por asiento. Mismas features por ~$5/mes de VPS.
Casa de proyecto OSS
Hospeda un proyecto OSS (con issues, PRs, releases, Actions) en infraestructura que controlas. Mirror a GitHub para visibilidad.
Mirroring de código
Pull mirror desde GitHub/GitLab en horario — mantén una copia off-site de cada dep que use tu equipo.
Registry para artefactos internos
Un servidor para código + npm + Maven + imágenes Docker. Sin Verdaccio, sin Nexus, sin JFrog.
CI/CD para cargas no-cloud
Gitea Actions corre en tus propios runners — targets IoT/embebidos, cajas con GPU, entornos air-gapped donde los runners hosted de GitHub no alcanzan.
Ejemplos de código
git remote add origin https://gitea.example.com/yourname/repo.git
git push -u origin main # .gitea/workflows/test.yaml
name: test
on: [push, pull_request]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with: { node-version: 22 }
- run: npm ci
- run: npm test # ~/.npmrc
@yourorg:registry=https://gitea.example.com/api/packages/yourorg/npm/
//gitea.example.com/api/packages/yourorg/npm/:_authToken=<token>
npm publish curl -X POST \
-H "Authorization: token $GITEA_TOKEN" \
-H "Content-Type: application/json" \
-d '{"name":"my-repo","private":true}' \
https://gitea.example.com/api/v1/user/repos Comparativa
| vs GitHub | GitHub es hosted, pulido, $4-21/usuario/mes para repos privados. Gitea es OSS, autohospedado, gratis para usuarios ilimitados al coste de un VPS de $5/mes. La paridad de features es alta; Gitea no tiene integración con GitHub Copilot y algunas features enterprise avanzadas. |
| vs GitLab | GitLab CE es rico en features pero pesado — devorador de RAM, setup complejo. Gitea alcanza 80% de las features con 5% del footprint de recursos. Elige GitLab para DevSecOps completo; Gitea para un servidor Git + CI + registry limpio. |
| vs Forgejo | Forgejo es un fork community-friendly de Gitea (forkeado en 2022 por preocupaciones de gobernanza). Misma UI, mismas features, mismo codebase en su mayoría. Pier incluye Gitea; puedes instalar Forgejo vía plantilla Docker custom. |
| vs Sourcehut, Gogs | Sourcehut (sr.ht) es minimalismo email-driven — paradigma distinto. Gogs es el proyecto original del que Gitea hizo fork en 2016 y ahora está menos activamente mantenido. |
Preguntas frecuentes
¿Qué versión despliega Pier?
¿SQLite, MySQL o Postgres como backend?
¿Cómo corro CI?
¿Cómo maneja HTTPS Pier?
¿Acceso SSH para git clone?
¿Cómo migro desde GitHub?
¿Estrategia de backup?
Servicios relacionados
Desplegar en tu VPS
Gitea es un servicio Git autohospedado ligero escrito en Go. Se ve y funciona como GitHub — repos, pull requests, issues, integración CI, code review, releases — pero corre como un binario único o un contenedor Docker de 100MB. Usado por desarrolladores individuales, proyectos OSS y empresas que no quieren su código en la nube de otros.
Desplegar este servicio →