Cómo Autoalojar Forgejo en un VPS (Guía Completa)
Forgejo es un potente servicio de Git autoalojado y de código abierto que proporciona una experiencia fluida para gestionar tus proyectos y repositorios. Desplegarlo en un Servidor Privado Virtual (VPS) te permite mantener el control total sobre tus datos y personalizar tu entorno. Esta guía te guiará a través de los pasos necesarios para autoalojar Forgejo en un VPS, abarcando todo, desde la instalación hasta la configuración.
Requisitos Previos
Antes de comenzar, asegúrate de tener lo siguiente:
- Un VPS con al menos 1GB de RAM y 1 núcleo de CPU
- Un nombre de dominio apuntado a tu VPS (opcional pero recomendado)
- Docker y Docker Compose instalados en tu VPS
- Conocimientos básicos de la línea de comandos de Linux
Elegir un Proveedor de VPS
Al seleccionar un proveedor de VPS, considera factores como rendimiento, precio y soporte. A continuación se muestra una comparación de algunos de los principales proveedores de VPS adecuados para alojar Forgejo:
| Proveedor | Precio (por mes) | RAM | Almacenamiento | Centros de Datos |
|---|---|---|---|---|
| Contabo VPS | 5.99 EUR | 4 GB | 200 GB | Europa |
| Hetzner Cloud | 4.15 EUR | 2 GB | 20 GB | Europa |
| DigitalOcean | 6 USD | 1 GB | 25 GB | Global |
| Vultr | 6 USD | 1 GB | 25 GB | Global |
| Linode (Akamai Cloud) | 5 USD | 1 GB | 25 GB | Global |
Todos los precios son competitivos y proporcionan una base sólida para autoalojar aplicaciones como Forgejo. Consulta nuestra comparativa completa de VPS para más opciones.
Paso 1: Configurando Tu VPS
-
Accede a Tu VPS: Usa SSH para iniciar sesión en tu VPS.
ssh root@tu_ip_del_servidor -
Actualiza el Sistema: Asegúrate de que tu VPS esté actualizado.
apt update && apt upgrade -y -
Instala Docker y Docker Compose:
apt install docker.io docker-compose -y -
Inicia el Servicio de Docker:
systemctl start docker systemctl enable docker
Paso 2: Desplegando Forgejo con Docker
-
Crea un Directorio para Forgejo:
mkdir -p /opt/forgejo cd /opt/forgejo -
Crea el Archivo
docker-compose.yml:Usa tu editor de texto preferido para crear el archivo.
nano docker-compose.ymlAgrega el siguiente contenido:
version: '3' services: forgejo: image: forgejo/forgejo:latest environment: - GITEA__database__DB_TYPE=sqlite3 - GITEA__database__PATH=/data/gitea/gitea.db - GITEA__server__DOMAIN=tu_dominio.com - GITEA__server__ROOT_URL=https://tu_dominio.com volumes: - ./data:/data ports: - "3000:3000" - "22:22" restart: unless-stoppedAjusta el
DOMAINy elROOT_URLa tu nombre de dominio real. -
Inicia Forgejo:
docker-compose up -d
Paso 3: Accediendo a Forgejo
Una vez que el contenedor esté en funcionamiento, puedes acceder a Forgejo navegando a http://tu_dominio.com:3000 en tu navegador web. Completa la configuración inicial, incluida la creación de la cuenta de administrador.
Opcional: Configurando un Proxy Inverso
Para mejorar la seguridad y el soporte SSL, se recomienda configurar un proxy inverso. Puedes usar NGINX o Traefik para este propósito. A continuación se muestra un ejemplo sencillo de configuración de NGINX:
-
Instala NGINX:
apt install nginx -y -
Crea la Configuración de NGINX:
nano /etc/nginx/sites-available/forgejoAgrega lo siguiente:
server { listen 80; server_name tu_dominio.com; location / { proxy_pass http://localhost:3000; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } } -
Habilita la Configuración:
ln -s /etc/nginx/sites-available/forgejo /etc/nginx/sites-enabled/ nginx -t systemctl restart nginx
Preguntas Frecuentes
1. ¿Qué tan seguro es autoalojar Forgejo en un VPS?
Autoalojar Forgejo en un VPS puede ser seguro, siempre que sigas las mejores prácticas, como actualizar regularmente tu software, usar contraseñas fuertes y configurar cortafuegos. Asegúrate de que tu proveedor de VPS ofrezca protección contra DDoS y elige una ubicación de centro de datos que se adapte a tus necesidades de latencia y seguridad. Además, asegura tu instancia de Forgejo con HTTPS para encriptar los datos en tránsito. Consulta las prácticas de seguridad descritas en foros como r/selfhosted para recomendaciones más detalladas.
2. ¿Puedo personalizar las características de Forgejo?
Sí, Forgejo es altamente personalizable. Puedes modificar su configuración a través del panel de administración para adaptarlo a tus necesidades. Forgejo admite varios métodos de autenticación, permisos de repositorios y mucho más. Explora la documentación oficial de Forgejo para obtener instrucciones completas sobre personalización y aprende cómo integrarlo con herramientas de CI/CD para aumentar la productividad.
3. ¿Qué hago si encuentro problemas durante la instalación?
Si encuentras problemas durante la instalación o configuración de Forgejo, considera buscar en foros comunitarios como r/selfhosted y en los problemas de GitHub. Además, asegúrate de que las versiones de Docker y Docker Compose estén actualizadas, ya que la compatibilidad a veces puede causar problemas. El repositorio de GitHub de Forgejo también contiene información valiosa y soporte de usuarios, lo que lo convierte en un recurso útil para la resolución de problemas.
Siguiendo esta guía, deberías tener ahora una instancia de Forgejo completamente funcional en tu VPS. ¡Feliz codificación y autoalojamiento!