Docker Compose を練習するのに WordPress サイトをローカルに立ててみるのはだれでもやったことあるんじゃないだろうか。これはリバースプロキシとなるウェブサーバー、PHPのCGI(WordPress)、データベースと複数のコンテナが連携するので Docker Compose の練習にはうってつけだと思う。
ちょっと前まではリバースプロキシに Nginx を使うのが定石だったが、さいきんは Caddy というさらに簡単に使える万能ウェブサーバーが出てきて、これを使いたいという人も多いと思う。
Caddy は公開で立てると TLS 証明書の更新まで自動でやってくれるらしいので実用でもなかなかよさそう。Nginx では Let’s Encrypt の更新をスクリプトでなんとか自動化するみたいなことをしていたが、そんなこと人間が手動でがんばることなかったのだ。
そんなわけで私も練習に Caddy + WordPress (+ MariaDB) で立ちあがる Docker Compose ファイルを作ってみました。FastCGI で動かすとかするとけっこう頭使うところもあったので覚え書きも兼ねている。また、localhost で TLS 証明書を使いたいときの参考にもなるかもしれない。