Windows に Jekyll をインストール

Ruby の 静的サイトジェネレーター jekyll を Windows にインストールしてみた。

インストールした環境

  • Windows 8.1 Pro 64bit
  • Ruby 2.0.0p353

Ruby をインストール

まずは Ruby をインストールします。(既に Ruby インストールしている方は飛ばしてください)

  1. rubyinstaller.org から Ruby のインストーラーをダウンロードします。
    最新バージョン Ruby 2.0.0 をダウンロードします。(使用している環境にあったものをダウンロードします)
  2. ダウンロードしたインストーラーを実行して Ruby をインストールします。環境変数にパスを通すチェックボックスがあるのでチェックを入れます。(入れ忘れても後で設定可能)
  3. インストールしたら、コマンドプロンプトから ruby -v と入力して、Enter を押下してみましょう。Ruby のバージョンが確認出来ればインストールされてます。

Devkit をインストール

続いて、Devkit をインストールします。
jekyll を使うためには Ruby の開発キットが必要なのでインストールします。

  1. rubyinstaller.org から Ruby の開発キットをダウンロードします。(使用している環境にあったものをダウンロードします)
  2. 任意のディレクトリを作って開発キットを解凍します。
    例)C:\DevKit\
  3. コマンドプロンプトから開発キットを初期化してインストールします。
    開発キットのディレクトリで以下のコマンド入力して実行します。

初期化コマンド

ruby dk.rb init

インストールコマンド

ruby dk.rb install

Bundler をインストール

gem から jekyll をインストールしてもいいのですが、ここでは Bundler を使って jekyll をインストールします。Bundler はプロジェクト内で使う gem を管理するもので、プロジェクト単位で gem を管理できます。Bundler を間に入れて gem パッケージをインストールすることで gem がごちゃごちゃになりません。(Bundler は gem の gem と言われたり...この辺あまりわかってない)
入れておいて損はしないのでインストールしておきます。

コマンドプロンプトから以下のコマンドで bundler をインストールします。

gem install bundler

インストールしたら、新規ディレクトリを作成して、そのディレクトリで以下のコマンドを実行します。

  • Note: 作成する新規ディレクトリのパスに日本語が含まれると jekyll が動かないので注意。以下は「デスクトップ」という日本語がパスに含まれているのでダメな例
    例)C:\[User Name]\デスクトップ\my-jekyll-project
bundle init
  • Note: bundler ですが使うコマンドは bundle なので注意

すると、ディレクトリ内に Gemfile が作成されるので任意のテキストエディターで Gemfile を開いて以下のように書き換えて保存する。
保存する際、文字コードは UTF-8N 改行コードは LF で保存する。

# A sample Gemfile
source "https://rubygems.org"

# gem "rails"
gem "jekyll", "1.4.2"

require 'rbconfig'
gem 'wdm', '~> 0.1.0' if RbConfig::CONFIG['target_os'] =~ /mswin|mingw/i

jekyll のバージョンは 1.4.2 をインストールします。
これは、最新バージョンの 1.4.3 は Windows 環境と互換性がないためです。

gem "jekyll", "1.4.2"

wdm は jekyll の自動生成機能を使用するためのものです。

require 'rbconfig'
gem 'wdm', '~> 0.1.0' if RbConfig::CONFIG['target_os'] =~ /mswin|mingw/i

jekyll をインストール

いよいよ jekyll をインストールします。
bundler を使うので bundle コマンドでインストールを行います。以下のコマンドを実行します。

bundle install --path _vendor

すると、_vendor というディレクトリが作成されてその中に jekyll と wdm と依存関係の gem パッケージがインストールされます。

インストールされたか確認するために、以下のコマンドを実行して確認してみます。

bundle exec jekyll

jekyll のヘルプが表示されれば jekyll がインストールされています。

この段階でのディレクトリ構造は次の通り

\DEMO-JEKYLL
├─.bundle
├─_vendor
├─Gemfile
└─Gemfile.lock

jekyll を実行する

jekyll がインストールされたので、この後は jekyll を使っていくだけです。
公式サイトにあるように jekyll new コマンドを実行して jekyll のプロジェクトディレクトリを作成します。

bundle exec jekyll new my-jekyll-project
  • Note: Bundler を使っているので bundle exec コマンドを使って実行します。

jekyll のプロジェクトディレクトリを作成したら、cd コマンドで作成したプロジェクトディレクトリに移動します。

cd my-jekyll-project

my-jekyll-project の中は以下のようなディレクトリ構造になっていると思います。

\DEMO-JEKYLL\MY-JEKYLL-PROJECT
│  .gitignore
│  index.html
│  _config.yml
│
├─css
│      main.css
│      syntax.css
│
├─_layouts
│      default.html
│      post.html
│
└─_posts
        2014-03-16-welcome-to-jekyll.markdown

my-jekyll-project ディレクトリで jekyll を実行してみます。
以下のコマンドを実行します。

bundle exec jekyll serve

すると、Ruby の簡易サーバー WEBrick が起動するので、任意のブラウザで localhost:4000 にアクセスします。

サーバを停止するときは、Ctrl+C で停止します。

ちなみに、以下のコマンドを実行すると Auto-regeneration (自動生成機能)が有効になります。これは編集・保存するたびにファイルが自動生成されます。

bundle exec jekyll serve -w

同様にサーバを停止するときは、Ctrl+C で停止します。

記事後記

jekyll のディレクトリ構造まで説明を書くと長くなってしまうのと勉強不足なので、とりあえず、Windows に jekyll をインストールして実行するところまで記事にしました。
Windows 環境に jekyll をインストールするのは思いのほか結構大変でした。

以下の参考リンクで Github 上にまとめてくれた人がいました。とても参考になると思います。

参考リンク