CrescPia

ある Blog の始め方

この Blog では、自作のサービスの紹介や IT に関する話題を書いていこうと思っています。
今回はこの Blog 自体の作り方の話です。

どんな Blog 環境がいいか?

あれこれ考えながら Blog 環境を検討していました。


勉強と楽しみを兼ねて、できれば自作したいと思っていました。
自作する場合はデータベースを用意して既存 Blog サービスと同じような仕組みを作ることになるかなぁと漠然と考えていました。
ただちょっと大がかりすぎる上に、記事で図を扱おうとすると仕組み自体が難しそうです。
やっぱり既存サービスがいいか、と行ったり来たりしていました。


Jekyll という「静的サイトジェネレータ」を見つけました。
見つけたといっても ver.1.0 が2013年にリリースされているので11年以上前からあったものです。
Blog 記事を書くだけで、記事のページはもちろん一覧ページも作ってくれます。

記事はマークダウンで書けます。
マークダウンで書いたテキストファイルを _posts フォルダに置いておくだけです。
図を挿入したいときも画像ファイルを置いておいて、マークダウン記法で記述するだけです。

![top一覧](/assets/images/20241101/top_list.png)

簡単そうです。
データベースはもちろん不要!
自作といっても Web サービスを作るのではなく、html と css で画面のテンプレートを作成するということになります。
Jekyll ではテーマ(テンプレート)がいろいろあってそれを利用すればほぼ自分で作るところはなくなります。
後述しますが、僕は結局テンプレートについては自作しました。


記事に専念

こんな風に書けます。
この記事のソースです。

---
layout: post
title: "ある Blog の始め方"
date: 2024-11-1
excerpt_separator: <!--more-->
---
この Blog では、自作のサービスの紹介や IT に関する話題を書いていこうと思っています。  
今回はこの Blog 自体の作り方の話です。  
 <!--more-->

### どんな Blog 環境がいいか?
あれこれ考えながら Blog 環境を検討していました。
- 環境構築にはあまり苦労したくない。
- 既存の Blog サービスにするか? 自作にするか?
- ソフトウェアの Tech Blog がメインなので、ソースコードのシンタックスハイライトはしたい。 
- 記事を書くときに html や css の調整はしたくない。
- 環境のメンテナンスはできるだけしたくない。

---
勉強と楽しみを兼ねて、できれば自作したいと思っていました。  
自作する場合はデータベースを用意して既存 Blog サービスと同じような仕組みを作ることになるかなぁと漠然と考えていました。  
ただちょっと大がかりすぎる上に、記事で図を扱おうとすると仕組み自体が難しそうです。  
やっぱり既存サービスがいいか、と行ったり来たりしていました。  

---
[Jekyll](https://jekyllrb.com/){:target="_blank"}  という「静的サイトジェネレータ」を見つけました。  
見つけたといっても ver.1.0 が2013年にリリースされているので11年以上前からあったものです。 

title: とあるのがこの記事のタイトルで、date: とあるのがこの記事の日付です。
また、リード部分はトップ画面の記事一覧で表示されます。(先頭から <!--more--> までの部分)
記事を書くだけで一覧ページも更新されます。(1記事しかありませんが・・・)
top list title: などと同様に tags: で記事をタグ付けしておくと、タグ別のページを作ることもできます。

セットアップ紆余曲折

  1. docker
    • Jekyll 公式の docker があります。2年前の更新で、ちょっと古そうではあります。
    • 残念ながら僕の環境では起動しませんでした。
    • 結局諦めて ruby の docker をベースに Jekyll 関連をインストールした docker を作成しました。
  2. テーマ
    • テーマを利用するといい感じのサイトを簡単に作成できます。
    • いい感じのテーマを見つけて利用してみたのですが、scss 関連のエラーが出てしまいます。ちょうど過渡期なのか、廃止された機能を利用しているということでした。
    • 頑張ってエラーを修正しようかと一瞬考えたのですが、うまくいったとしてもメンテナンスが大変になると思いテーマを利用するのはやめました。
    • チュートリアルを見てみると意外と簡単そうだし、もともとシンプルに作ろうと思っていたので自作することにしました。

まとめ

Jekyll は一度セットアップしてしまうと、あとはマークダウンで記事を書くことに専念できます。
記事を書いてファイルを _posts フォルダに入れるだけ。
セットアップも docker を使えば環境を汚す心配もありません。
自作すると Blog 自体を成長させていく楽しみもあります!
セットアップ方法の説明していますので良ければご参考に。→ Jekyll スタートダッシュ