middlemanで作ったportfolioをS3で運用

Posted on
middleman s3 namecheap portfolio

portfolioを作成しました。本当は他にも作ったものがあるのですが、デザイン等色々修正する必要があるので、追々追加して行こうと考えています。

構成

Middleman

MiddlemanはJekyllのような静的サイトジェネレーターです。使ってみた感想としては、シンプルな構成で自分好みでした。slimとsassを使える上、livereloadのおかけで、開発がスムーズに進みました。

Amazon S3

ホスティングはAmazon S3のStatic Website Hostingという機能を使っています。namecheapでDomainを購入したのですが、Route53のDNSサーバに変更するのに少し手間取りました…

middleman-sync

毎回ビルドしたhtmlやらcssを手動でAmazon S3にアップロードするのは少し面倒なので、middleman-syncというgemを利用しました。middleman-syncを利用する際にAWSのaccess key idsecret access keyを渡す必要があるのですが、config.rbに直に書くのは避けるために、環境変数を参照するように設定しました。

sync.aws_access_key_id = ENV['AWS_ACCESS_KEY_ID']
sync.aws_secret_access_key = ENV['AWS_SECRET_ACCESS_KEY']

そこで便利だったのが、direnvというツールで、指定したディレクトリに移動した時のみに指定の環境変数を有効化してくれるツールです。.envrcに以下の様に書くと、あとはprojectのルートディレクトリに移動すると.envrcに記述した環境変数を読み込んでくれます。

# .envrc
export AWS_ACCESS_KEY_ID="YOUR_AWS_ACCESS_KEY_ID"
export AWS_SECRET_ACCESS_KEY="YOUR_AWS_SECRET_ACCESS_KEY"

おわりに

とてもmiddlemanを気に入ったので、時間を見つけて本ブログもoctopressからの移行を画策しています。

cf