Jekyll Blog

Apr 22 2012

So my old server finally died and forced me to complete my move to jekyll. I didnt move most of my blog posts from my old wordpress blog, I might move more, but a lot of the entries were old and out of date. If there is a resource that you are missing email me and I'll repost it here right away.

New blog is setup using Jekyll and hosted on S3 and served via Cloudfront. I dont have any server in the process. Jekyll if you havent used it, is a static file generator that combines a list of blog posts written in markdown with a templated layout. Run it each time you have new blog entry, and BAM, static html blog.

I post the static html to an S3 bucket using s3cmd I set a header so the CDN will know to expire the content quickly. Version 1.1.0-beta2 of s3cmd added the --cf-invalidate flag which invaldate the cloudfront distribution tied to the s3 bucket you are using. Including that in the s3cmd starts the invalidation process. Invalidation is no instant on Cloudfront, keep that in mind when deploying your blog.

s3cmd --acl-public --add-header 'Cache-Control: max-age=300' --force --progress --cf-invalidate \
sync _site/ s3://

Using the AWS console I set a cloudfront distribution to pull from the s3 bucket I created and respond to the CNAME of my blog. Also set the Default root object to index.html so it will serve off the root of the domain.

That's it, static blog launched. More changes to come.