50 lines
2.3 KiB
Markdown
50 lines
2.3 KiB
Markdown
---
|
|
layout: post
|
|
title: Getting Ready
|
|
---
|
|
|
|
After contemplating about different options for DNS, hosting, and the bloggging technology for more than a week, I have settled on the following configurations to start blogging! (for now! )
|
|
|
|
### DNS
|
|
|
|
[Bionic Beanie](https://theportalwiki.com/wiki/Bionic_Beanie) is a head wear from [Portal 2](https://en.wikipedia.org/wiki/Portal_2) co-op. Portal series is one of my favourite PC games and Bionic Beanic Blog scores 10/10 on alliteration consonance (in my opinion :P)
|
|
|
|
Bought it right away from [Go Daddy](https://in.godaddy.com/). The package included DNS hosting as well.
|
|
|
|
### Blog
|
|
|
|
I wanted to use a static site generator as opposed to any CMS. In my experience, CMSes typically get bloated with more plugins and addons and tend to get slower. [Jekyll](https://jekyllrb.com/) is what I settled with - mainly because I recognise the name Jekyll from my childhood with [**The Strange Case of Dr Jekyll and Mr Hyde**](https://en.wikipedia.org/wiki/Strange_Case_of_Dr_Jekyll_and_Mr_Hyde). Also, Jekyll is highly configurable and blazing fast!!
|
|
|
|
To start things off, this site is powered by [Lanyon](https://github.com/poole/lanyon#readme) which is an extension of [Poole](https://getpoole.com/) - the Jekyll butler (name derived from the afore mentioned book).
|
|
|
|
### Hosting
|
|
|
|
Bought the cheapest VPS from [Vultr](https://www.vultr.com/) for $5 a month - 1GB RAM and a single core shared server. This is good enough for hosting my static files.
|
|
|
|
### The Setup
|
|
|
|
The server will run behind an [nginx](https://www.nginx.com/) instance serving static files from `_site` folder that are built as part of jekyll build process. This way, to publish new changes, I just have to clone and build the files. The blog itself will be in a private git repository.
|
|
|
|
[LetsEncrypt](https://letsencrypt.org/) helped issuing free ssl cert for my domain.
|
|
|
|
The below nginx conf concludes the setup of the blog.
|
|
|
|
```
|
|
server {
|
|
location / {
|
|
root /var/www/html/site; # synlink to _site
|
|
}
|
|
listen 443 ssl;
|
|
ssl_certificate <path to chain.pem>;
|
|
ssl_certificate_key <path to private-key.pem>;
|
|
}
|
|
```
|
|
|
|
I can make new changes on the repo and push them in.
|
|
|
|
And publish new changes with `JEKYLL_ENV="production" bundle exec jekyll build` from inside the VPS.
|
|
|
|
It should be possible to do this with a git hook, but I'm not too worried about it right now.
|
|
|
|
**Let's Go**
|