Cómo instalar Gitea para tener un servidor Git local

Última actualización: 3 de septiembre de 2026
  • Gitea es una alternativa ligera a GitLab y GitHub que consume muy pocos recursos del sistema.
  • La instalación se basa en un binario ejecutable gestionado como servicio a través de SystemD.
  • El uso de un proxy inverso con Nginx es fundamental para habilitar el acceso seguro mediante HTTPS.
  • Permite migrar repositorios existentes desde otras plataformas manteniendo issues y etiquetas.

Racks de servidores en un centro de datos, representando la infraestructura de un servidor Git local.

Si estás harto de depender de las normas, los costes o la disponibilidad de gigantes como GitHub o GitLab, montar tu propia infraestructura es el camino. Tener un servidor Git en casa o en tu propia oficina te da las llaves del reino: control absoluto sobre el código, gestión total de los accesos y la tranquilidad de no tener límites impuestos por terceros en tus repositorios privados.

Entre todas las opciones disponibles, Gitea destaca como una joya. Es una herramienta escrita en Go, lo que la hace increíblemente ligera y rápida, ideal para quienes no quieren dedicarle 16 GB de RAM a un servidor de Git. A diferencia de GitLab, que es un transatlántico lleno de funciones pero muy pesado, Gitea es como una lancha motora: va al grano, consume poquísimos recursos y ofrece una interfaz muy familiar para cualquiera que haya usado GitHub.

Comparativa rápida: Gitea, GitLab y Forgejo

Ingeniera de software configurando un servidor mediante un ordenador portátil en una sala de servidores.

Antes de meterle mano a la instalación, conviene saber dónde nos metemos. GitLab es la opción corporativa por excelencia, ideal para equipos enormes que necesitan CI/CD integrado, pero requiere un hardware potente. Gitea, por su parte, es la mejor elección para servidores modestos o proyectos personales por su bajísima huella de memoria. Finalmente, tenemos a Forgejo, que es un fork comunitario de Gitea; si eres un purista del software libre y prefieres una gobernanza abierta sin tintes corporativos, esta es tu alternativa.

  Qué es la virtualización y cómo activarla paso a paso

Lo que necesitas antes de empezar

Ordenador portátil mostrando líneas de código en un espacio de trabajo moderno, ideal para ilustrar la gestión de repositorios Git.

Para que todo fluya sin sustos, asegúrate de tener un servidor con Linux (ya sea Ubuntu, Debian o Rocky Linux) con acceso de superusuario. También es imprescindible que tengas instalado Git en la máquina y, aunque Gitea permite usar SQLite, para entornos de producción lo más recomendable es tirar de PostgreSQL o MariaDB para garantizar la estabilidad de los datos.

Preparando el terreno en el sistema

Primer plano de manos programando en un teclado, representando el desarrollo de software y el uso de Gitea.

No es buena idea ejecutar Gitea como root por motivos de seguridad. Lo ideal es crear un usuario dedicado. Puedes hacerlo ejecutando el comando adduser --system --shell /bin/bash --group --home /home/gitea gitea. Es fundamental usar /bin/bash como shell porque Gitea necesita interactuar con git-shell a través de SSH. Si aún no tienes Git instalado, un simple apt install git resolverá el problema rápidamente.

Instalación del binario y estructura de carpetas

Detalle de cables ethernet conectados a un switch de red, ilustrando la configuración de red y el proxy inverso.

Gitea se puede instalar de varias formas, pero el binario es lo más directo. Debes localizar la versión estable más reciente en su web oficial y descargarla mediante wget en /usr/local/bin/gitea, dándole posteriormente permisos de ejecución con chmod +x. Para que el programa funcione correctamente, hay que crear una serie de directorios específicos: /etc/gitea para la configuración y /var/lib/gitea para los datos, logs y archivos personalizados. No olvides ajustar los permisos de propiedad (chown) para que el usuario gitea pueda escribir en ellos.

Configuración de la base de datos

Si optas por PostgreSQL, deberás instalar el paquete y crear un rol específico con una contraseña segura, además de la base de datos giteadb con codificación UTF8. Si prefieres MariaDB, el proceso es similar: creas la base de datos y el usuario, asegurándote de que el motor de almacenamiento sea InnoDB y que el servidor esté escuchando en el puerto 3306.

  Cómo montar tu propio servidor de libros electrónicos con Calibre

Automatización con SystemD

Para no tener que arrancar Gitea a mano cada vez que reinicies el servidor, lo mejor es crear un archivo de unidad en /etc/systemd/system/gitea.service. Este archivo le dice al sistema que Gitea debe ejecutarse como un servicio, definiendo el usuario, el grupo y la ruta del binario. Una vez creado, basta con ejecutar systemctl enable --now gitea y el servidor empezará a escuchar, por defecto, en el puerto 3000.

El primer contacto con la interfaz web

Al entrar en http://tu-ip:3000, te encontrarás con el asistente de configuración. Aquí es donde conectas la base de datos (indicando el host, usuario y contraseña) y defines los ajustes generales del sitio, como el nombre de la instancia y la URL base. Es el momento también de configurar el servidor SSH y decidir si quieres que cualquier persona pueda registrarse o si prefieres desactivar el registro público para mantener el servidor privado.

Seguridad y acceso profesional con Nginx

Acceder por el puerto 3000 es cutre y poco seguro. Lo ideal es montar un proxy inverso con Nginx. Esto permite que los usuarios entren mediante un dominio (ej. git.tudominio.com) y que todo el tráfico viaje cifrado mediante certificados SSL de Let’s Encrypt. En la configuración de Nginx, simplemente rediriges el tráfico del puerto 443 hacia el puerto 3000 de Gitea, añadiendo las cabeceras X-Forwarded-For para no perder la IP real del cliente.

Gestión de usuarios y migración de código

Si desactivaste el registro abierto, puedes crear el primer administrador mediante la línea de comandos usando el comando gitea admin user create. Una vez dentro, puedes añadir tus claves SSH públicas en el perfil de usuario para clonar repositorios sin escribir la contraseña cada vez. Si ya tienes código en GitHub, Gitea tiene una herramienta de migración integrada que importa no solo el código, sino también los issues y las etiquetas de forma automática.

  Guía avanzada para optimizar la latencia web a nivel global

Mantenimiento y puesta a punto

Mantener Gitea es sencillísimo. Para actualizar, basta con descargar el binario nuevo, sustituir el antiguo y reiniciar el servicio. Para los backups, el comando gitea dump es tu mejor amigo, ya que genera un archivo comprimido con todo: base de datos, configuración y repositorios. Para el correo electrónico, puedes configurar un servidor SMTP externo (como Gmail) o instalar Postfix en el servidor para recibir notificaciones de pull requests y alertas.

Implementar Gitea te permite disponer de una plataforma de control de versiones robusta, ligera y totalmente privada, eliminando la dependencia de servicios externos mediante una instalación basada en binarios, una base de datos optimizada y un proxy inverso que garantiza la seguridad del tráfico mediante HTTPS.