Create websites for your GitLab projects, groups, or user account.
Use any static website generator: Jekyll, Middleman, Hexo, Hugo, Pelican, and more.
Connect your custom domain(s) and TLS certificates.
Host your static websites on GitLab.com for free, or on your own GitLab instance.
While you can create a project from scratch, let's keep it simple and fork one of your favorite example projects to get a quick start. GitLab Pages works with any static site generator.
You can take advantage of the free shared Runners available on GitLab.com. All your builds will run on distinct Virtual Machines which use the latest Docker Engine. This will effectively eliminate any possible security issues, as there is no potential of breaking outside the container. However, you are free to set up your own Runner for your project.
Navigate to your project's Settings > CI/CD and click on "Enable shared runners." This combines the power of GitLab CI/CD with GitLab Runner to deploy static sites based on any generator. On new projects this setting may be enabled by default.
If you skip this step, your website will be available at https://username.gitlab.io/projectname, where username is your username on GitLab and projectname is the name of the project you forked in the first step. This is what we call a project page.
If you want the website to be available at https://username.gitlab.io, go to your project's Settings > Advanced, rename your project to username.gitlab.io and update its path to username.gitlab.io as shown at the screenshot. This is what we call a user page.
Depending on the static generator this may require some
additional steps. Make sure to read the README.md
file of
the project you chose.
Manually run a pipeline for the first time in order to trigger the job process. Alternatively, commit & push at least one change. You can edit your site files right from the browser, or use Git from the command line.
Visit your project's Pipelines and click the Run pipeline button. In the next page hit Create pipeline and the pipeline will start.
Once the pipeline runs, the build process will begin and your site will eventually be available online.
Fire up your browser and visit https://username.gitlab.io/projectname or https://username.gitlab.io depending on what you followed in step 3.
Use with any static website generator. Read our quick start tutorials or browse our documentation .
Add multiple custom domains and secure them with your own TLS certificates .
Create custom error pages.
Have a question? We're here to help.
Talk to an expert