Hugo導入記(1) インストール

Categories
Tags
Share

ついこの前までブログはWordPressを使っていたのですが、Hugoを使うことにしました。

WordPressをやめた理由

  • レンタルサーバを解約してコスト削減したかった
  • レンタルサーバの契約更新処理が面倒
  • レンタルサーバの安定性が不安だった(ときどき落ちていた)
  • WordPressのコメントスパムが鬱陶しい
  • テンプレートの修正が大変
    • WordPress用の関数がオブジェクト指向じゃなくて辛い
  • DBのバックアップが面倒

という辺りです。

Hugoを選んだ理由

Hugoを選んだ理由は、

  • 静的コンテンツジェネレータとして高速である
  • 静的コンテンツジェネレータの中では一番有名っぽい
  • ググったら情報が結構出てくるのでなんとかなりそう
  • 自動デプロイとかの情報も充実している
  • BitBucketなどにリポジトリを作ればそれがバックアップになる
  • 最初からmarkdownで記述できる
  • 出力されるのはhtmlなので、もし他のサーバに引っ越す場合でも簡単
  • Amazon S3にホスティングすれば安いし安定する

くらいでしょうか。

私は静的コンテンツジェネレータはRuby製のmiddleman推しなんですが、別のやつも触れておきたいなと思っていたので、 いい機会だと思った次第です。たぶん、ブログ以外であれば、今まで通り、middlemanを使うと思います。 middlemanやjekyllはページ数が増えてくるとコンテンツ生成に時間がかかるように なってストレスだという情報をよく見かけたので、ブログならばHugoがいいかなぁ、というくらいの選択基準です。

個人的にCMSってどれもなんか使いづらくてバックアップとかも気にしないといけないしセキュリティも云々とかになってくると、 そこまでブログのために手間かけるの面倒じゃない?って常々思っていたわけです。 まぁ予約投稿とかできるから、その辺りは便利でいいんじゃないかとは思います。

注意: Hugoが苦手なところ

これはmiddlemanとの比較になりますが、Hugoが苦手なところは、HugoだけではAltJSやSassなどの モダンなフロントエンド環境は準備できないというところです。

middlemanはRuby製なので、例えばSassやCoffeeScriptを使いたい場合はGemfileに追加してbundle installするだけで、 それらのコンパイル環境が整ったので楽なのですが、Hugoにはそれがないので、gulpやwebpackのようなNode.js製のタスクランナーと 組み合わせておかなければなりません。

私はgulpもwebpackも深くは触ったことがないし、HugoでWebアプリケーションを作りたいわけではないと割り切って、 AltJSもSassも今は使わない、まずはHugoだけ覚えよう、と割り切って作業しました。 まぁJavaScriptとCSSは普通に使えるので、凝ったことをしない限りは困りません。

Hugoの導入方法

本家にあるのでそれをやりましょう。

Installing Hugo

と、例のごとく書いておきますが、一応、Mac用のインストール方法を書きます。

Step 1: brewのインストール(まだならば)

Homebrewをインストールしていない場合、ターミナルを開いて、以下のコードをコピペして実行しましょう。

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Step 2: brewコマンドでhugoをインストールする

まずはHomebrewを更新します。

brew update

そのあと、Hugoをインストールします。

brew install hugo

インストールできたか確認しましょう。

which hugo

Step 3: 終わり

もうインストールは終わりました。時間がある方は本家のクイックスタートなどを試してみましょう。

次回は、Hugoのディレクトリ構成についてでも書こうかなと思います。


comments powered by Disqus