背景
MovableTypeを使ってこれまでブログを公開していましたが、以下に示すような理由でHugoに移行しました。
- 管理を省力化したかった
- kubernetes上に移行したかった
- MovableTypeの豊富な機能を全く使いこなしていなかった
- コンテンツをgitで管理したかった
きっかけはMovableTypeを動かしていたサーバがCentOS7だったので退役させたかったことでした。
そこで以前からやりたかったことを実行に移しました。
Hugoとは
Hugoはスタティックサイトジェネレータなので、htmlファイルなどを出力するためのツールです。
出力されたファイルをWebサーバ上において公開する仕組みです。
Kubernetes上で公開する際はNginxのコンテナにファイルをコピーして、そのコンテナをPodで動かします。
移行の方法
MovableTypeの記事をテキストファイルに出力する機能があるのでそれを使って記事データをエクスポートします。
Hugoでは1記事1ファイルなのでエクスポートしたテキストファイルを記事毎に分割します。
ChatGPTに手伝ってもらって変換ツールを作って記事ファイルを用意できました。
記事中で参照する画像ファイルもあったのですが、以前の移行のときにサボって消してしまったので画像などのことは気にせず記事本文だけを気にすれば良かったのでそれほど難しくありませんでした。
ただ、アフィリエイトリンクやSNSへの共有ボタンなど一部移行していないものもあります。
今後
記事の移行はできましたが、デザイン含めほぼデフォルトのままなのでHugoの機能も勉強しつつ、充実していきたいと思います。
変換ツール
ChatGPTさんと協力して作ったMovableTypeのエクスポートデータをHugo用のファイルに変換するツールを紹介しておきます。
MovableTypeのときのURLからリダイレクトするためのNginx向けコンフィグも併せて生成します。
MovableType2Hugo