質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

Q&A

解決済

1回答

6575閲覧

Dockerを使ったローカル環境でWordPressのプラグイン等のインストールができません

kefi3104

総合スコア33

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

0グッド

0クリップ

投稿2016/04/24 15:42

docker-composeを使ってWordPressとMysqlのコンテナを作成後にWordPressでプラグインをインストールしようとしても上手く動きません。
パーミッション関連が原因だと思うのですが、原因が分からず困っています。

OSは、Mac OS X Yosemite10.10.5です。

YAMLファイルは以下のように書いています。

YAML

1wp: 2 image: wordpress:latest 3 volumes: 4 - src:/var/www/html 5 links: 6 - db:mysql 7 ports: 8 - 80:80 9 environment: 10 WORDPRESS_DB_PASSWORD: password 11 WORDPRESS_DB_HOST: XXXX_db_1 12 13db: 14 image: mysql:latest 15 environment: 16 MYSQL_ROOT_PASSWORD: password

また、WordPressのconfig.phpには以下の記述を追加することで、FTPモードではなく、直接DLするようにしています。

php

1define('FS_METHOD', 'direct');

また、パーミッションも以下のとおりに777しています。

sudo chmod -R 777 wp-content

上記対応をおこなってもディレクトリが作成できないエラーが出てしまい、プラグイン等のインストールができません。
他にも、/UsersディレクトリやWordPressをインストールしているディレクトリパーミッションを777にしてみたりしているのですが、症状は変わりません。

上記は/Usersの配下のディレクトリでマウントすることで起こっています。
Macintosh HD直下にて同様の手順を行うと上手くいくのですが、Docker(KitematicのGUI)でローカルディレクトリのマウントは/Users配下のディレクトリでないとマウントができないようですので、/Users配下でどうにかするしかなさそうです。

この場合、単なるパーミッションの設定が問題なのか、それとも他に設定が必要なのか、ご存じの方がおられましたらご教授いただけますと幸いですm(_ _)m

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

自分の環境(OS X El Capitan, Docker 1.11.0, Docker Compose 1.7.0)では同じdocker-compose.ymlでうまく行きました。XXXXの部分はdocker-compose.ymlのあるディレクトリの名前にしているのですよね?

パーミッションを777にしたのはコンテナ内部での話ですよね? もう一度docker exec -it XXXX_wp_1 bashでWordPressコンテナに潜ってパーミッションを確認してみてください。/var/www/html内部は全てwww-dataが所有しているはずです。

というか質問のdocker-compose.ymlではMac上のフォルダをマウントなんてしていないはずですよね。どこで実行しても結果は同じはずですが……。
可能性があるとしたらMacの~/.docker/machine/machines/default/disk.vmdkのパーミッションとか……?

どうしてもうまく行かなかったらコンテナをrmしてからdocker volume rm srcsrcボリュームを削除してやり直すとか……。

投稿2016/04/25 03:08

編集2016/04/25 03:09
Bakudankun

総合スコア173

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kefi3104

2016/04/28 14:16

ご回答頂きましてありがとうございました。 結論から申し上げますと、以下のサイトを参考にdocker-composeを修正したら解決できました。 http://www.sitepoint.com/how-to-use-the-official-docker-wordpress-image/ 実は、マウントはKitematicでやっておりました。 (KitematicでmySQLlとWordpressのコンテナイメージをダウンロードして使おうとしたところ、mySQL接続エラーでWrodpressが動かなかったため、docker-composeを使った経緯があります。) 質問時点では、Kitematicでマウントしたローカルディレクトリのパーミッションを777にしていまして、ご教授いただいた方法でコンテナ内のディレクトリも777に変更しても同様にプラグインのインストールはできませんでした。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問