鯛めしのお釜

ウェブに関する技術的なメモを書いていきます。

Docker for Mac で Compose を使って WordPress を設置する(SSL 編)

以前、Docker for Mac で Compose を使って WordPress を設置する という記事を書いたが、今回はそれに加えて SSL 設定を施し、https://localhost にアクセスするまでを試してみた。 

 

---

<作業の流れ>

  1. docker-compose.yml ファイル作成
  2. WordPress の Container 内でオレオレ証明書作成、SSL 設定

 

---

1. docker-compose.yml ファイル作成

公式ドキュメントを参考に、yml ファイルを以下の通り用意した。

Create a WordPress Container with SSL and a MySQL ...

<ポイント>

  • ローカルマシン(Mac)から https アクセスできるよう、WordPress の ports に「443」を加筆している

<その他、特筆事項>

  • アクセス時にポート指定をしないで URL を叩けるようにしたかったので「127.0.0.1」を明示的に書いている
  • 既存の WordPress データを流し込みたかったので、MySQL の volumes に dump ファイルを指定している
  • なお、dump ファイル内のデータに存在するドメインはすべて「https://localhost/」に書き換え済みである

yml ファイルを用意できたら、次のコマンドを叩いて Container の作成完了。

$ docker-compose up -d

 

---

2. WordPress の Container 内でオレオレ証明書作成、SSL 設定

Docker 上で構築したサイトに https アクセスできるようにするための設定方法はいろいろあるが・・・今回はローカルで動かしたかっただけなので、WordPress の Container 内で作業することにした。

まずはお勉強も兼ねて、上記 1 の作業で作られる WordPress の元である Dockerfile を確認。

github.com

上記ファイルにある通り、OS は Debian の jessie を使ってるんだな〜とか、sslapache 関連の記述もあるということを把握した上で、さっそく WordPress の Container へ入って作業スタート。

$ docker exec -it {WordPress の Container ID} bash

SSL 設定手順は次のサイトを参考にさせていただきました m(_ _)m

www.server-world.info

上記ページを参考に証明書を作成していく。このとき、証明書作成の時代の流れにのっとって、きちんと SHA-2 を扱うようにすること(本記事執筆時点)。

ちなみにエディタが入っていなかったので vim をインストールした。

$ apt-get update

$ apt-get install -y vim

作業を終えたら Apache を再起動し、さっそくアクセス。

https://localhost/

これでローカル環境で https を利用して WordPress を立ち上げることができた。

次回は Let's Encrypt とかイマドキなやり方を試してみたい。