This document discusses the author's experience migrating their blog from a traditional CMS to using Hugo and GitLab Pages for static site generation. Some key points:
1. The author was frustrated with the maintenance and security of their previous Drupal-based site and wanted a simpler blog.
2. They chose to use Hugo for static site generation and GitLab Pages for hosting due to existing GitLab use, lower maintenance, and free hosting.
3. The migration process took several months of copying over content and restructuring the site. The author has since added continuous integration pipelines for linting, testing, deploying, and performance monitoring.
4. Using GitLab Pages and Hugo for a static site
4. 4#GitLabCommit
About me
● DevOps Consultant @ HeleCloud
● Docker Community Leader
● GitLab Hero
● Co-organiser of London GitLab
Meetup
● Owner of 16 guitars
● Started using GitLab in Jan 2016
5. 5#GitLabCommit
History of my site
● Used Drupal since 2009.
● Maybe 4-5 different iterations of
my site.
● Traditional CMS (PHP, MySql)
requires:
○ Administration
○ Maintenance
○ Learning
9. 9#GitLabCommit
Previously, I had unsuccesfully pitched
using GitLab Pages as replacement for
WordPress/Drupal/Adobe across approx
100-200 sites.
Failed because…
11. 11#GitLabCommit
Why Hugo?
1. Fast
2. Uses Golang... all the cool kids use
that.
3. Fairly simple to use
4. Not something I already know,
learning opportunity
The world’s fastest
framework for
building websites
13. 13#GitLabCommit
Migrating to GitLab
Pages
1. Found theme I liked
2. Made a custom theme in Hugo
3. Put it together in GitLab and turned on
GitLab Pages...
5. Spend 8 months copying/pasting content
and restructuring…
7. Spent 3 months building extra bits theme...
4. BOOM! Site done!
6. BOOM! Site done!
8. BOOM! Site done!
14. 14#GitLabCommit
How Can I Make it
Better?
1. Custom domain
(willhallonline.co.uk)
2. SSL Cert (Let's Encrypt - built in a
separate CI pipeline)
3. CI to improve it (Linting (Stylelint,
Javascript), Deployment,
Performance Testing, etc)
4. CloudFlare (CDN)
25. 25#GitLabCommit
Costs
1. Private Git Hosting
2. Private CI tools
3. Static site hosting
4. SSL Certs (Let's Encrypt)
5. Global CDN (CloudFlare)
6. Domain name - £4.69 per year! I
lied
7. Scale to thousands of users.
26. 26#GitLabCommit
What have we learnt?
1. GitLab Pages simple to deploy static
sites
2. Costs non-existent
3. Hacker News is brilliant challenging
28. 28#GitLabCommit
Image by https://pixabay.com/users/Rainer_Maiores-147114/
Image by https://pixabay.com/users/Free-Photos-242387/
Image by https://pixabay.com/users/hschmider-3108740/
Image by https://pixabay.com/users/acekreations-1659208/
Image by https://pixabay.com/users/jarmoluk-143740/
Image by https://pixabay.com/users/DariuszSankowski-1441456/
Image by https://pixabay.com/users/RyanMcGuire-123690/
Image by https://pixabay.com/users/cpastrick-35190/
Image by https://pixabay.com/users/StefanHoffmann-152440/
Credits
Notas del editor
GitLab already have personal projects, Docker containers, open source projects,
GitHub… Mainly for integration with other services (Docker Hub/Ansible Galaxy)
Less work - I already know the platform, which is massive advantage
FREE - A consistent theme throughout my life, FREE is my favourite cost!
Remember a world where we lived without WYSIWYG editors and In-Place Editing and application templating.
Theme: (looks nice, lightweight, has illustrations, is MIT)