Configurar GitLab en un VPS
Guía paso a paso para desplegar GitLab con SSL y Docker.
GitLab es una plataforma DevOps completa — hosting de repositorios Git, pipelines CI/CD, seguimiento de tareas y colaboración de equipo, todo en un único lugar. Gestionar tu propia instancia en un VPS significa que tienes el control total: tu código permanece en tu servidor, no hay límites en los repositorios privados y ningún tercero tiene acceso a tus datos. Para los equipos que trabajan con código sensible o proyectos internos, eso marca una diferencia real frente a depender de una instancia en la nube.
GitLab es exigente con los recursos por diseño. Asegúrate de que tu VPS tenga al menos 4 GB de RAM y 4 núcleos de CPU antes de comenzar — con menos es probable que tengas problemas de estabilidad.
Configurar tu dominio
GitLab necesita un dominio para obtener automáticamente un certificado SSL a través de Let's Encrypt. Sin él, la configuración no se completará correctamente.
- Registra un dominio o crea un subdominio — algo como
git.tu-sitio.comfunciona perfectamente. - Ve a la sección de gestión de DNS en tu panel de control y crea un registro A que apunte a la dirección IP de tu VPS.
- Espera a que el DNS se propague — normalmente tarda entre 5 y 30 minutos.
Importante
No ejecutes el instalador hasta que tu registro A resuelva efectivamente a la IP de tu servidor. Let's Encrypt intentará verificar la propiedad del dominio durante la configuración, y fallará si el DNS todavía no está listo.
Conectarse al servidor
- Inicia sesión en tu panel de control → VPS → selecciona tu servidor.
- Obtén la dirección IP y la contraseña de root en los detalles del pedido.
- Conéctate por SSH especificando directamente el puerto
2222:
ssh root@IP_DE_TU_SERVIDOR -p 2222
Conexión al servidor y configuración inicial de GitLab
¿Todavía no tienes un VPS?
Fornex ofrece hosting VPS con acceso root completo y soporte 24/7. Consigue un servidor estable con discos NVMe para un funcionamiento rápido y fiable. Más detalles en la página VPS de Fornex.
Ejecutar el asistente de configuración
La primera vez que inicies sesión, el asistente te recibirá con la pantalla de bienvenida de GitLab Direct Image:
*****************************************************
* GitLab Direct Image (SSL / Port 22 for Git) *
*****************************************************
* EN: BEFORE RUNNING: Point A-record to this server IP
* EN: SYSTEM SSH PORT: 2222
* EN: To start setup, run: gitlab-setup
*****************************************************
El asistente te hará dos preguntas:
- Domain — introduce tu dominio (p. ej.
git.example.com):
Enter your domain (e.g., git.example.com):
- Email — introduce una dirección para las notificaciones SSL de Let's Encrypt:
Enter Email for SSL notifications:
Tras esto, el script toma el control y lanza GitLab mediante Docker Compose. Verás una salida similar a esta:
🐳 Starting GitLab via docker compose...
[+] up 2/2
✔ Network gitlab_default Created 0.0s
✔ Container gitlab-web Started 0.5s
------------------------------------------------
✅ Setup initiated!
⚠️ WARNING: System SSH is now on port 2222!
⏳ GitLab will be ready in 3-5 minutes.
🔑 Initial root password will be available at:
cat /root/gitlab/config/initial_root_password
------------------------------------------------
Configuración de GitLab en progreso
Obtener la contraseña de administrador
GitLab genera automáticamente una contraseña temporal para la cuenta root. Recupérala con el siguiente comando:
cat /root/gitlab/config/initial_root_password
Copia la contraseña (el largo código alfanumérico que aparece tras la palabra Password:) en un lugar seguro — la necesitarás en un momento.
Obtención de la contraseña root inicial de GitLab
Primer inicio de sesión
Dale a GitLab entre 3 y 5 minutos para que arranque por completo, luego abre el navegador y ve a:
https://tu-dominio.com
Pantalla de inicio de sesión de GitLab
Inicia sesión con:
- Usuario:
root - Contraseña: la obtenida en el paso anterior
Una vez dentro, ve directamente a User Settings → Password y establece una contraseña permanente antes de hacer cualquier otra cosa.
Cambio de contraseña en GitLab
Gestionar el servicio
GitLab corre en Docker, por lo que aplican los comandos habituales de docker compose. Primero navega al directorio del proyecto:
cd /root/gitlab
Luego usa el comando que necesites:
- Reiniciar:
docker compose restart - Detener:
docker compose down - Iniciar:
docker compose up -d - Ver los logs:
docker compose logs -f
Algunos aspectos que conviene tener en cuenta
- Separación de puertos SSH: el puerto 22 está reservado exclusivamente para operaciones Git (
git clone,git push, etc.). Para conectarte al servidor por SSH, utiliza siempre el puerto 2222. - Reinicio automático: el contenedor Docker está configurado para arrancar automáticamente al reiniciar el servidor — tu instancia de GitLab volverá a estar disponible sin ninguna intervención manual.
- Recursos: vigila el uso de memoria, especialmente a medida que tu equipo y los repositorios crezcan. Puedes monitorizar la carga del servidor desde el dashboard y cambiar a un plan superior si es necesario.
- Copias de seguridad: adquiere el hábito de hacer copias de seguridad de tus repositorios y configuraciones. La herramienta integrada de backup:
docker exec -t gitlab-web gitlab-rake gitlab:backup:create.
La copia de seguridad se genera dentro del contenedor Docker en/var/opt/gitlab/backups/. Para copiar el archivo al directorio actual del host, ejecuta:
docker cp gitlab-web:/var/opt/gitlab/backups/<backup_filename>.tar .
Ayuda
¿Tienes dudas o necesitas ayuda? Escríbenos a través del sistema de tickets — siempre estamos aquí para ayudarte!