Grant Harper

Blog Pipeline software

If you say web blogging technology, I say Wordpress. While Wordpress is a great platform, I have chosen to explore the world of the static Content Management System (CMS) to build this particular blog.

In the post I will discuss the static CMS blog architecture and its benefits. I will also show you how to set up a blog of your own and what it takes to go from writing a post to hosting it online.

Architecture

This blog uses Jekyll to compile markdown files into static HTML, CSS, and Javascript files that can be directly loaded to a publicly accessible web directory. The web directory in this case is an S3 bucket with web hosting enabled that has a bucket name identical to the domain where the blog is hosted (e.g. blog.grantharper.org). Routing from the domain to the bucket is done via Route 53.

Cheap

Using Amazon S3 for a low-traffic blog is highly cost-effective.

S3 and Route 53 Pricing per Month

Item Cost
Storage $0.023 per GB
GET Requests $0.004 per 10,000 requests
PUT, COPY, POST, LIST Requests $0.005 per 1,000 requests
Data Transfer to Internet First GB free, Up to 10TB $0.090 per GB
Hosted Zone $0.50

Domain names typically cost $12-14 per year for most any typical domain provider. Using Amazon Route 53 to register your domain is particularly convenient.

Typical hosting costs for a server that runs a wordpress site are about $5 per month at the low end.

The following calculator estimates the cost on a per month basis of using Amazon S3 for hosting static files.

S3 Cost Calculator

Metric Value Estimate as of 8/9/2017
Storage (GB) 0.000250
Requests 200 (optimistic)
Files Uploaded 1000
Data to Internet (GB) 0.500
Total $ 0 $ 0.01

Secure

Static HTML, CSS, and Javascript. That's all. There is no operating system or database to hack into. There are no patches to install or updates to perform.

Wordpress, on the other hand, is a favorite PHP playground for hackers, especially for sites that fall behind on updates.

Fast

AWS S3 page load times are in the milliseconds.

In contrast, some of the cheaper web hosting options require multiple seconds to load a page rendered by a cheap resource-constrained server.

Fully customizable

Anything that HTML, CSS, and Javascript can do, the static CMS Jekyll can do to. While Jekyll does not have the extensive library of themes and plugins present in the Wordpress community, it is a great option for those with an understanding of basic web technologies to build and deploy a blog.

You can start with a pre-built theme and override any file you want by replicating it in your blog's directories that match the theme's directories.

Setup

Deployment Pipeline

Below is a simple process flow that illustrates how to go from authoring a post, to deploying it live on the internet.

Specific steps and commands

← Back to Posts