Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
2
Help us understand the problem. What is going on with this article?
@makutamoto

Docker上のWordpressでVolumeマウント時にプラグインのインストールや削除に失敗する場合の対処法。

More than 1 year has passed since last update.

はじめに

Docker上のWordpressにボリュームをマウントすると、プラグインのインストールや削除ができなかったので対処法をメモしておく。
ちなみにDocker Desktop for Macではこの記事の問題は起こらなかった。

環境

  • Ubuntu 18.04
  • Docker 19.03.6
  • Docker Compose 1.25.3
  • Wordpress 5.3.2

状況説明

まず、自分はwp-content/pluginswp-content/uploadsにファイルシステムからマウントした。

問題1 プラグインを削除できない。

下記のようにFTP情報を入力しろと言われる。

問題2 プラグインをインストールできない。

下記のようにディレクトリを作成できないというエラーがでる。
error1.png

対処法

Dockerfileを作成し、ENTRYPOINTでwp-contentwp-content/pluginswp-content/uploadsの所有者を変更してやればいい。

Dockerfile
FROM wordpress:latest

ENTRYPOINT chown www-data:www-data /var/www/html/wp-content /var/www/html/wp-content/plugins /var/www/html/wp-content/uploads && docker-entrypoint.sh apache2-foreground
# chownで対象ディレクトリの所有者変更。
# docker-entrypoint.shでWordpressイメージのENTRYPOINT呼び出し。
docker-compose.yml
version: '3.3'

services:
   db:
     image: mysql:5.7
     volumes:
       - db_data:/var/lib/mysql
     restart: always
     environment:
       MYSQL_ROOT_PASSWORD: somewordpress
       MYSQL_DATABASE: wordpress
       MYSQL_USER: wordpress
       MYSQL_PASSWORD: wordpress

   wordpress:
     depends_on:
       - db
     build: . # Dockerfileからビルド。
     volumes:
        # pluginsとuploadsをマウント。
        - ./plugins:/var/www/html/wp-content/plugins
        - ./uploads:/var/www/html/wp-content/uploads
     ports:
       - "80:80" # SiteGuard等でアクセスエラーが出るのでポートは同じ方が望ましい。
     restart: always
     environment:
       WORDPRESS_DB_HOST: db:3306
       WORDPRESS_DB_USER: wordpress
       WORDPRESS_DB_PASSWORD: wordpress
       WORDPRESS_DB_NAME: wordpress
volumes:
    db_data: {}

ダウンロード

参考

2
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
makutamoto
高専生(電気電子工学科)。

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
2
Help us understand the problem. What is going on with this article?