紫の開発日記。

同人サークルサイトを運営するにあたっての作業内容等を書きます。

【第4回】Docker上のWordpressの日本語化 & ダッシュボードからの更新

このシリーズの概略については、こちら↓をお読みください。
yukari-n-u.hatenablog.com

これは私個人の備忘録なので、内容については保証しかねます。
ただ、間違っている箇所があれば教えいただけると嬉しいです。

環境

ConoHa VPS
CentOS 7.7.1908
Docker 19.03.5
Docker-compose 1.25.0

症状

  • Docker上でWordpressを起動したら、他の解説サイトのように言語選択画面にならず、いきなりアカウント作成画面に進まされた。
  • 管理画面上から言語を変更しようとしても、英語以外存在しない
  • Wordpressのコンテナに入ってwp-config.phpを無理やり変更してみたが、Wordpress管理画面からWordpressの更新が失敗する

※以降の作業はバックアップを取って行うことを強くお勧めします。私は取らなかったけど。Dockerだし。

作業

1. wordpressコンテナのbashに入る

まずは、docker psコマンドでwordpressコンテナのIDを調べます。

$ docker ps

で出てきたコンテナのうち、imageがwordpress、名前がそれっぽいものを見つけ、IDをコピーします(12桁?)。その後、

$ docker exec -it <コンテナのID> bash

とすることでそのコンテナのbashを起動できます。

2. wp-config.phpの編集

コンテナのbashではvi・vimなどが使えません。なので、echoコマンドの出力をリダイレクトし、ファイルの末尾に追加書き込みします。

# echo "define('WPLANG', 'ja');" >> wp-config.php

本当はsed?とか使った方がいいと思います。使えるかどうかは試してないけど。

これでWordpressの管理画面上で日本語に設定を変更するという選択肢が出現しました。しかしこの変更を行いWordpress自体の更新をしようとしたところ、エラーが発生しました。これはどうやらコンテナ内のパーミッションが関係しているようです。

3. htmlディレクトリのオーナーの変更

↓を参考にしました。
Docker版WordPressのアップデートでFTP画面になってしまうとき

オーナーの確認等はこの記事を見ながらやってもらうとして、最終的に実行すべきコマンドは以下のものです。htmlディレクトリにいる場合の話。

# chown -R www-data.www-data .

最後の.はゴミではなく、二番目の引数として与えたカレントディレクトリです。多分ね。

この変更を行うことで、管理画面上から日本語版Wordpressのインストールが可能になりした。多分最新版への更新も可能になります。

所感

そもそもどうしてこういう事態になったのかがわからない。
そしてこの対処が適切だったかどうかはわからない。
そもそも別にWordpressくらい日本語で使ってもいいんだけど。

ていうかマウントをもう一個上にしとけば、vimが使えないと悩む必要なかったですね。