In my previous post I explained why I decided to migrate my blog away from Blogger. And that I decided to use Jekyll to generate my blog from now on.
What is Jekyll
Jekyll is a Ruby based website generator. Its output is static html pages that you can include with whatever web server you choose, including Jekyll’s own web server.
You may have seen lot of Jekyll generated pages already as it was initially created by GitHub to power their GitHub pages.
Why Jekyll
- Full control of HTML. No crap included.
- No online real time editing (a plus for me).
- Static HTML, so fast, and secure.
- Markdown for posts.
- Self hosted (not always a good thing, but works better for me).
- Easy and extensive choice of themes.
Creating a Jekyll blog
Develop
Jekyll are installed as a Ruby Gem. But you can create it and its pages & posts all inside a Jekyll Docker container.
Theme
There is a lot of readily available themes for Jekyll:
- jekyllthemes.org
- jekyll-themes.com
- jekyllthemes.io
- github.com/jekyll/jekyll/wiki/Themes
- talk.jekyllrb.com/t/jekyll-theme-showcase-share-your-jekyll-themes/
- github.com/planetjekyll/awesome-jekyll-themes
And more if you search for “Jekyll theme”. Most are free and some you need to pay $25-$49 for.
I would suggest considering a Gem based theme for simplicity.
In the end I chose to modify the Galada theme by Artem Sheludko.
Migrate posts
Thankfully Jekyll includes a lot of import tools for migrating from various blog services. The Blogger import plugin worked perfectly for me.
Building & Hosting
You can host your Jekyll site directly with GitHub pages, with AWS’ S3 or others.
But I prefer a bit more control so I have hosted mine inside my own Kubernetes cluster.
I also generate the site and build a Docker image with CircleCI.
Step by step howto
For a complete A-Z howto guide on how I create, import, theme, customize, write posts, build and host my now Jekyll based blog, please read flurdy.com/docs/jekyll/
Unless otherwise specified, all content is licensed under Creative Commons by Attribution 3.0 (CC-BY).
Externally linked images and content are not included and are licensed and copyrighted separately.