はてなブログからさくらVPSのDocker環境に構築したWordPressに移行しました
このたびはてなブログからWordpressへ移行しました。
URLは変更していないのでこれまでどおりです。
正確にいえばSSL化したので以下になります。
これからもよろしくおねがいします。
移行環境として、さくらVPS + Docker + Nginx リバースProxy + Let’s Encrypt + WordPress という感じで構築してみました。
なぜ移行した
端的にいうとサーバーが余っていたから。
以前からさくらVPSの契約はしていたけれど、あまり有効活用をしていませんでした。
そのままにしておくのももったいないと思い利用方法を考えていたところ、だったらブログを移行させようじゃないかと思い今回に至ります。
Dockerの環境
VPSの有効活用をしようと思った際に、Docker環境を作りたいと思いました。
Docker と Docker Compose の環境を構築するのはさくらがスタートアップスクリプトを用意しているので簡単に行なえます。
ここのスクリプトを利用することで簡単にインストールができました。
リバースプロキシの導入とLet’s Encrypt で SSL化
nginx-proxy と letsencrypt-nginx-proxy-companion を利用してSSL対応とリバースプロキシを構築しました。
まずは、複数サイトのホスティングにも対応できるようにするためのリバースプロキシです。
基本的にはここに記載の構成で作りました。DB を共有コンテナにすることはしませんでした。おそらく独立して保持することで問題ないので。
Let’s Encrypt を利用したSSL化はこちらを参考に。
先程の構成に letsencrypt-nginx-proxy-companion を追加することで完了です。
はてなブログからデータのインポートと整形
WordPress 環境は、ひとまず別のサブドメインを設定して構築しました。
はてなブログでエクスポートしたデータをインポートして整形します。
画像データもはてなブログから保存し直して(ちゃんと残していなかったので)それを再登録。
はてなのブログカードを変更したり、Amazonリンクを変更したり。
Amazonリンクは AmazonJS で最初していたけれど、JQuery による読み込みなのでやめて、 「Amazon Associates Link Builder」にしました。
そのほうが AMP 対応とか楽なはず。(AMP対応はいったんあとまわし)
パーマリンクははてなブログで「entry/YYYY/MM/DD/Title」というように付けていたので、カスタムして同じに合わせることで、これまでのものと同じになるようにしました。
実は多少異なるものもあるのでしょうが、そこはあとで直します。
いざ公開(ドメインをはてなからVPS側へ)
データ整形が終わったところで公開へ。
- はてなブログの独自ドメイン設定を解除。
- WordPress内の「WordPress アドレス」「サイトアドレス」のそれぞれを「blog.itdog.jp」ベースのものに変更。(このタイミングで一瞬アクセスできなくなるので結構焦る)
- docker-compose.yml に設定したサブドメインを「blog.itdog.jp」へ変更
- さくら側のドメイン設定を変更(CNAMEからAへ)
これである時間が経つと反映されてアクセスがはてなブログからVPS側のWordpressへアクセスが変わります。
まとめ
かけあしですが、こんな感じでこちらのサイトに変更しました。
メンテナンスとか自分でしないといけないけれど、それもまたひとつの楽しみとして。
カスタマイズがいろいろできるのでその楽しみもこれからさらに味わおうと思います。