web関連

【docker】「docker-compose.yml」でphpやWordPressのバージョンを上げる方法

dockerでWordPressバージョンを最新にバージョンアップしても「5.9」に戻るのを最新バージョンに固定したり、phpのバージョンを上げる方法の備忘録

dockerで「WordPress」と「php」のバージョンを上げる方法

docker内のWordPressのバージョンとphpのバージョンを上げるためには、「docker-compose.yml」の記述を変更する事で可能。

wordpress:
  image: wordpress:latest
  volumes: (省略)

上記、wordpress:latest部分をwordpress:6.4.2-php8.1-apacheに変更することで「WordPress」と「php」のバージョンを上げることができる。

wordpress:
  image: wordpress:6.4.2-php8.1-apache
  volumes: (省略)

これで、phpのバージョンは7.4.28から8.1.26に上がる。
WordPressは管理画面でアップデートすると6.4.2が反映(固定)される。
※phpのバージョンを確認する場合は、phpinfo()

編集が終わったら以下のコマンドを実行。

docker-compose up -d --build

おまけ:Dockerfile linksの選び方

wordpress:6.4.2-php8.1-apacheの記述はDocker Hub – WordPressを参考。

色々とバージョンがあるが、ざっくりと以下のようなイメージ。

  • fpm…Webサーバーがnginx
  • Apache…WebサーバーがApache
  • cli…コマンドラインからphpを実行する場合に使用
  • alpine…軽量イメージ

とりあえず、Apacheがついたモノを選んでおけば良さそう。

追記:「wordpress:latest」について

「WSL」を更新したらdockerの方でエラーが出て上手く立ち上がらなくなったので、dockerの方を初期化した。
すると、今までwordpress:latestを指定するとphpバージョンで7.4.28が当たってたのに8.2.13が当たるようになった。

wordpress:latestは、dockerインストール時の最新なのか、キャッシュが絡んで古いバージョンを参照していたのかもしれない。
それによくよく考えると、wordpress:latestを指定して立ち上げる度に「WordPress」と「php」のバージョンが変わってたら困るから当然の機能なのかもしれない。

「docker-compose.yml」ではなく「Dockerfile」を用意してバージョンを変更する方法もあるようだが、Dockerfileは単独のDockerイメージを作るための設定ファイルであり、docker-compose.ymlは複数のDockerイメージを組み合わせてアプリケーションを実行するための設定ファイルのようなので、WordPressなどで使用することはあまりなさそう。

Leave a Comment

入力エリアすべてが必須項目です。メールアドレスが公開されることはありません。

内容をご確認の上、送信してください。