Pular para o conteúdo

How to setup a CDN under Gitlab Organization

How to setup a CDN under Gitlab Organization

Hello my name is Luiz i'm a software engineer based in brazil, in this article i'll show you how to setup a static files CDN under Gitlab Organization using Gitlab Pages.

What is Gitlab Pages?

Gitlab Pages is a feature that allows you to host static websites directly from your Gitlab repositories. It’s similar to Github Pages, but with a few key differences:

  • Gitlab Pages supports HTTPS for custom domains with Let’s Encrypt, while Github Pages only supports HTTPS for github.io subdomains.
  • Gitlab Pages supports custom domains for private repositories, while Github Pages only supports custom domains for public repositories.

How to setup a CDN under Gitlab Organization

First of all you need to create a Gitlab Organization, if you don't have one yet, you can create one here.

After that you need to create a new project, you can do that here.

Now you need to create a new project with a setup and structure like this:

├── .gitlab-ci.yml
├── public/
   └── Here you put your static files like images, css, js, etc... to be served by the CDN
└── README.md

After that you need to create a new file called .gitlab-ci.yml and put this code inside:

image: alpine:latest

pages:
  stage: deploy
  script:
    - echo "Nothing to do..."
  artifacts:
    paths:
      - public
  only:
    - main

This file will tell Gitlab to deploy the public folder to Gitlab Pages.

Now you need to go to your project settings and enable Gitlab Pages, you can do that here. And make pages available to everyone.

How to use the CDN

As i told before this CDN is using the Gitlab Pages, so in order to access the project you need to go to https://YOUR_ORGANIZATION_NAME.gitlab.io/YOUR_PROJECT_NAME/.

How to use a custom domain

In order to use a custom domain you need to go to your project settings and add your custom domain, you can do that here.

After that you need to go to your domain provider and add a new CNAME record pointing to YOUR_ORGANIZATION_NAME.gitlab.io.

Profile picture
Luiz Fernando - Senior Software Engineer

Obrigado por ler!

Espero que você tenha gostado de ler este artigo. Se você tiver alguma dúvida ou feedback, não hesite em entrar em contato comigo nas minhas redes sociais abaixo. Tenha um ótimo dia!

Carousel imageCarousel imageCarousel imageCarousel imageCarousel image
Próximo / Tudo começa com uma boa conversa

Grandes ideias.
Little Luiz.

Um produto para tirar do papel? Um time para fortalecer? Vamos descobrir o que podemos construir juntos.

Escolha seu caminho
01Freelance / Products

Tenho um projeto

Freelances, produtos e desafios técnicos para resolver juntos.

  • Da descoberta do produto à entrega
  • Engenharia web, mobile e backend
  • Escopo claro. Colaboração direta.
Vamos criar algo
02Hiring / Teams

Estou formando um time

Vagas de engenharia e oportunidades para construir a longo prazo.

  • Engenharia full-stack sênior
  • Visão de produto e responsabilidade técnica
  • Experiência com times distribuídos
Me chame para o seu time
03Résumé / Versions

Explore currículos

Versões sob medida para engenharia geral, health-tech, fintech e mais.

  • Seis variantes focadas
  • Exportação PDF pronta para impressão
  • Atualizado para cada vaga
Veja meu currículo
luizepauloxd@gmail.com

Prefere e-mail? Escreva diretamente ou comece um rascunho aqui.

Me conte o que você tem em mente.

© 2026 Luiz Fernando Feito com intenção. E um pouco de curiosidade.Voltar ao topo