Docker 版 WordPress に GMP extension を追加する備忘録です.
いつもの通り結論から記すと,
WordPress on Docker 公式が用意している library / extension 追加機能を使う
と比較的簡単に実現できます.
GMP があると何が嬉しいか?
以下の記事でも書いたんですが,GMP があると WordPress をパスキー認証に対応させる WP-WebAuthn プラグインを使えます.
Wordpress でパスキー備忘録
Wordpress でパスキー備忘録です. 結論から書くと, プラグインで簡単にパスキー対応にできますが,プラグインを探すときは「パスキー」ではなく「WebAuthn」で探す! とすぐに見つかります. WP-WebAuthn を使う 上に書...
GMP がなくても使えるプラグインもあるんですが,キーによっては使えなかったり,キー名を自分でつけることができなかったりとあまり使い勝手良くないです.
公式の情報
公式の情報については,以下のページの「Adding additional libraries / extensions」に記されています.
Docker
ただし,実際にこれをみながらやるのは結構大変だと思います.と言うことで,以下にこうやれば出来るという結論のみ記します.
GMP プラグイン追加 HOWTO
まず,以下2つの内容のファイルを作成します.もちろんパスワード等は伏せ字にしていますのでご注意ください.作成したら,これら2つのファイルが置いてあるところで,
$ docker-compose up -d
とするだけです.
Dockerfile
RUN apt-get update RUN apt-get install -y gcc RUN apt-get install -y curl RUN apt-get install -y libgmp-dev RUN docker-php-ext-install gmp RUN docker-php-ext-enable gmp
docker-compose.yaml
version: '3.1' services: wordpress: image: wordpress container_name: wordpress build: context: . dockerfile: DockerFile restart: always ports: - 8080:80 environment: WORDPRESS_DB_HOST: db:3306 WORDPRESS_DB_USER: wordpress WORDPRESS_DB_PASSWORD: xxxxxxxxxxxxxxxxxxxxxxxxx WORDPRESS_DB_NAME: wordpress volumes: - /var/lib/docker/volumes/wordpress/html:/var/www/html db: image: mysql:5.7 container_name: mysql restart: always environment: MYSQL_DATABASE: wordpress MYSQL_USER: wordpress MYSQL_PASSWORD: xxxxxxxxxxxxxxxxxxxxxxxxx MYSQL_RANDOM_ROOT_PASSWORD: MYSQL_RANDOM_ROOT_PASSWORD volumes: - /var/lib/docker/volumes/wordpress/db:/var/lib/mysql
以上!