Jekyll has the Conch
Over the weekend, I converted this blog from Gravity to Jekyll. Aside from taking any excuse to learn something new, I was also motivated by the convenience of hosting Jekyll on GitHub. Treating a blog as a repository is every bit as delightful as I hoped it would be. The only loss in moving over from a Digital Ocean droplet is that I’m back on regular HTTP. Is HTTPS really necessary for a blog? Probably not, but it did give me a warm, fuzzy feeling.
After running into some configuration issues installing Jekyll locally, I once again turned to Docker to solve all of my problems. I added some unnecessary-but-convenient bits and pushed up a repository, but a minimum Dockerfile requires only two lines.
FROM ruby:latest
RUN gem install jekyll bundler
If you remember to link your port and your blog directory, the only tricky part is connecting to the Jekyll development server from the local machine. I generally cheat and allow connections from all hosts. This isn’t terribly secure, and there are ways to get the real address of the local machine if you’re willing to do the leg work, but here’s the quick and dirty solution.
bundle exec jekyll serve -H 0.0.0.0
Jekyll is a marvelous blogging framework, by the way. After editing some really obvious configurations, you just start dropping markdown files into a posts directory. It’s a tool that does the basic things you need it for, and then gets out of your way. So far, I’m a huge fan.