Saltar al contenido principal

Conectar GitLab

Objetivo: autorizar GitLab en Dokploy para que pueda leer los repositorios. Se hace una vez.


1. Antes de empezar

  • Dokploy accesible por HTTPS.
  • Cuenta de GitLab con acceso a los repos a desplegar.
  • Decidir dónde viven los repos: cuenta personal (la app OAuth se crea en tu perfil) o grupo (créala desde Grupo → Settings → Applications para no atarla a una persona).

2. Copiar la Redirect URI de Dokploy

Panel → Settings → Git → botón GitLab. En el modal, copiar la Redirect URI (solo lectura):

https://panel.inmersys.dev/api/providers/gitlab/callback

No cerrar el modal. Abrir GitLab en otra pestaña.


3. Crear la app OAuth en GitLab

gitlab.com/-/profile/applicationsAdd New Application:

CampoValor
NameDokploy DEV
Redirect URIla copiada arriba
Confidential
Device authorization grant

Scopes — solo estos tres: ✅ api, ✅ read_user, ✅ read_repository. Todo lo demás sin marcar.

Save Application.

⚠️ GitLab muestra el Secret una sola vez. Copiarlo de inmediato. Si se pierde, se regenera con Renew secret (y hay que actualizarlo en Dokploy).


4. Llenar el formulario en Dokploy

De vuelta en el modal:

CampoValor
NameDokploy DEV (etiqueta interna)
Gitlab URLhttps://gitlab.com (cambiar solo si es self-hosted)
Application ID / Secretlos generados en GitLab
Group Namevacío si los repos están en tu cuenta personal

Group Name: si los repos están bajo un grupo, usar la ruta completa de la URL, no el nombre visible. Para gitlab.com/inmersys/web/mi-repoinmersys/web. Acepta subgrupos y lista separada por comas.

Save.


5. Autorizar (paso obligatorio)

Tras guardar, el proveedor aparece con el badge Action Required (credenciales registradas pero OAuth sin completar):

  1. Clic en el icono Install (⤴) en la fila del proveedor.
  2. Redirige a GitLab → Authorize.
  3. Vuelve a la sección Git de Dokploy.

Quedó bien cuando el badge y el icono ⤴ desaparecen. Si el navegador bloquea popups, permitirlos para el dominio del panel.


6. Verificación real

El badge desapareciendo es buen indicio, pero la prueba definitiva:

  1. Projects → Create Project → Create Service → Application
  2. Pestaña General → Provider: GitLab → seleccionar Dokploy DEV
  3. ✅ El dropdown debe poblarse con los repositorios.

Si sale vacío o marca error, el OAuth no cerró. Revisar: Redirect URI idéntica carácter por carácter, los tres scopes marcados, y (si es grupo) la ruta correcta.


7. Limitación a documentar

Dokploy no registra webhooks automáticamente en GitLab. A diferencia de GitHub, el auto-deploy en push no queda activo solo con conectar el proveedor — el webhook se crea a mano por cada servicio. Procedimiento completo en Auto-deploy con webhooks.