Amazon S3とHugoを利用したBlog作成

今回利用するサービス

  • Hugo
  • Amazon S3

Hugoの操作

  1. Hugoのインストール
  2. 新規プロジェクトの作成
  3. 記事の作成
  4. テーマをインストール
  5. 設定
  6. ビルド

1.Hugoのインストール

homebrewを使ってインストールします。

$ brew install hugo

2.新規プロジェクトの作成

$ hugo new site MYSITE

3.記事の作成

作成したプロジェクトに移動し新規の記事を作ります。

$ cd MYSITE
$ hugo new post/FISRT.md

4.テーマをインストール

今回は「blackburn」を使用しました。 まず、作ったプロジェクトのディレクトリに移動し、 その中にあるtheme/配下に任意のテーマをインストールします。

$ cd theme/
$ git clone https://github.com/yoshiharuyamashita/blackburn.git

blackburn

6.ビルド

$ hugo -t blackburn

すると、プロジェクトの配下にpublic/というフォルダが作られているので、 これをS3に配置して完成。

Amazon S3の操作

  1. バケットの作成
  2. バケットホスティングの設定
  3. ファイルの同期

1.バケットの作成

AWS CLIからバケットを作成する方法で実施した。

$ aws s3 md s3://BUCKET_NAME --region ap-northeast-1
  • mdはバケットの作成
  • --region ap-northeast-1はバケットを作成するリージョンの指定

2.バケットホスティングの設定

Static Website Hostingを有効にする。

$ aws s3 website s3://BUCKET_NAME --index-document index.html

BucketPolicyを設定する。

{
    "Version": "2012-10-17",
    "Id": "PublicRead",
    "Statement": [
        {
            "Sid": "ReadAccess",
            "Effect": "Allow",
            "Principal": "*",
            "Action": "s3:GetObject",
            "Resource": "arn:aws:s3:::BUCKET_NAME/*"
        }
    ]
}

3.ファイルの同期

$ aws s3 sync --delete public/ s3://BUCKET_NAME/
 
comments powered by Disqus