Configuración de GitLab Pages para hosting estático con CI
Clase 27 de 53 • Curso de DevOps con GitLab
Resumen
Convertir una idea en un sitio en línea es más simple con GitLab Pages. Conecta tu automatización y tu continuous integration a un hosting estático listo para servir tu website o una app moderna en React, View o Angular. Además, suma dominios personalizados y controla cómo se publica tu proyecto sin salir de GitLab CI.
¿Qué es GitLab Pages y por qué usar hosting estático?
GitLab Pages ofrece hosting estático para publicar websites y aplicaciones modernas que se compilan como archivos estáticos. Es ideal cuando ya manejas issue trackers, conversas alrededor del código y tienes automatización con continuous integration integrada a tu flujo.
- Sirve sitios y apps estáticas sin servidores complejos.
- Integra publicación en el mismo repositorio y pipeline.
- Acepta dominios personalizados además de URLs de gitlab.io o gitlab.com.
¿Qué tipos de proyectos puedes publicar?
- Websites estáticos con HTML, CSS y JS.
- Apps modernas construidas que generan archivos estáticos, por ejemplo en React, View o Angular.
¿Cómo configurar el deployment en GitLab CI con Pages?
La configuración vive en .gitlabci.yml y se basa en un job específico. La clave es nombrar el job correctamente, mover el contenido al directorio indicado y exportar artefactos para que el hosting los tome desde el pipeline.
- El job debe llamarse Pages. Es indispensable.
- Mueve todo lo que quieras publicar al folder Public.
- Exporta los artefactos de Public para que GitLab Pages los lleve del CI al hosting.
¿Cómo luce un esqueleto mínimo de .gitlabci.yml?
Pages:
stage: deploy
script:
- echo "Preparar archivos estáticos" # mover archivos al folder Public.
artifacts:
paths:
- Public
only:
- main # o la rama que uses para publicar.
¿Qué habilidades pones en práctica aquí?
- Configuración de pipelines en GitLab CI con un job de deployment.
- Gestión de artefactos para publicación estática.
- Organización de proyecto para servir contenido desde Public.
¿Qué URL y dominios ofrece GitLab Pages?
Hay varias formas de construir la URL final según sea proyecto personal, de grupo o con subgrupos. También puedes tener un dominio raíz sin indicar proyecto o subgrupo en la ruta.
- Proyectos personales: usuario.gitlabio/nombre-del-proyecto.
- Proyectos en grupo: grupo.gitlabio/nombre-del-proyecto.
- Con subgrupos: grupo.gitlabio/subgrupos/proyectos.
- Dominio raíz del usuario o grupo: crea un proyecto llamado usuario.gitlabio o grupo.gitlabio para publicar en esa raíz.
¿Cómo usar dominios personalizados?
- Conecta tu dominio propio para no depender solo de gitlab.io o gitlab.com.
- Mantén tu marca en la URL mientras publicas desde el pipeline.
¿Tienes dudas sobre la configuración del job Pages, la carpeta Public o las URLs por grupo y subgrupos? Comparte tu caso en los comentarios y afinamos tu deployment.