2
1

More than 3 years have passed since last update.

VultrでKUSANAGI Runs on Dockerが動くまで(その3)

Last updated at Posted at 2020-08-04

前回のおさらい

前回の記事『VultrでKUSANAGI Runs on Dockerが動くまで(その2)』ではVPC環境であるVultrKUSANAGI RoD環境を構築しWordpressをインストールするところまで確認しました。
今回はWordpressの設定を変えていきたいと思います。

動作環境など

  • Ubuntu 20.04
  • docker 19.03.12
  • docker-compose 1.26.2
$ docker-compose ps
       Name                     Command                 State                          Ports                     
-----------------------------------------------------------------------------------------------------------------
kusanagi01_config    docker-entrypoint.sh wp -- ...   Restarting                                                 
kusanagi01_db        docker-entrypoint.sh mysqld      Up                                                         
kusanagi01_ftp       /bin/sh -c /docker-entrypo ...   Up                                                         
kusanagi01_httpd     /docker-entrypoint.sh /usr ...   Up           0.0.0.0:8080->8080/tcp, 0.0.0.0:8443->8443/tcp
kusanagi01_php       /usr/local/bin/docker-entr ...   Up  

変更するWordpress周りの設定

  1. KUSANAGIパスワードの省略
  2. フォルダのパーミッションの変更(やらなくても大丈夫かも)

1. KUSANAGIパスワードの省略

KUSANAGIはセキュリティのためテーマやプラグインをインストールする際に以下のようにKUSANAGIパスワードを聞かれます。KUSANAGIパスワードはプロビジョニング時に指定していなければインストールディレクトリの.kusanagi.wpに記載があります。
img03.JPG

毎回パスワードを聞かれないようにするためには、wp-config.phpのFS_METHODをftpextからdirectに変更します。
KUSANAGI RoDの場合はローカルのファイルを修正し、kusanagiコマンドでコンテナにコピーする形になります。

$HOME/kusanagi01/contents/wp-config.php
#define('FS_METHOD', 'ftpext');
define('FS_METHOD', 'direct');          ここを変更
define('FTP_HOST', 'localhost');
define('FTP_USER', 'kusanagi');
#define('FTP_PASS', '*****');

以下のコマンドでコンテナにコピーします。エラー出るけど気にしなくて大丈夫です。

$ cd $HOME/kusanagi01
$ kusanagi-docker config push
chown: unknown user/group kusanagi:www
ERROR: Failed.

コンテナにログインしてファイルがアップされているか確認します。ftpコンテナにシェルアクセスして確認します。

ホスト上で実行
$ docker-compose exec ftp sh

以下、ftpコンテナ
/ # ls -al /home/kusanagi/kusanagi01/
total 28
drwxr-xr-x    6 kusanagi 1001          4096 Jul 26 03:15 .
drwxr-xr-x    3 kusanagi 1001          4096 Jul 26 03:29 ..
drwxr-x---    5 kusanagi 1001          4096 Jul 23 14:01 DocumentRoot
drwxr-xr-x    2 kusanagi 1001          4096 Jul 16 10:24 settings
drwxr-xr-x    2 kusanagi 1001          4096 Jul 18 13:56 tools
drwxr-xr-x    4 kusanagi 1001          4096 Jul 16 10:24 wp-config-sample
-r--r-----    1 kusanagi 1001          3345 Jul 26 03:15 wp-config.php

/ # cat /home/kusanagi/kusanagi01/wp-config.php |grep FS_
#define('FS_METHOD', 'ftpext');
define('FS_METHOD', 'direct');

2. フォルダのパーミッション変更(やらなくても大丈夫かも)

※以下の記述はやらなくても大丈夫かもしれません。
KUSANAGIパスワードとは別の問題でデフォルト状態だとフォルダに書き込み権限がなくて色々うまくいきません。
img04.JPG

ftpコンテナにシェルアクセスしてフォルダに権限を付与します。ftpコンテナだけrootでログインできるので何か変更する場合はftpコンテナを使います。
色々試した結果、以下のパーミッションでうまく動きました。きっとこれで大丈夫かと思います。
※kusanagi-docker configu pushをすると設定が元に戻るので要注意

  • DocumentRootを750から755に変更
  • DocumentRoot/wp-content配下のuploadsを755から775に変更
  • DocumentRoot/wp-content配下のuploads以外は755のまま
  • DocumentRoot/wp-content配下のlanguagesは750のまま
ホスト上で実行
$ docker-compose exec ftp sh

以下、ftpコンテナ
/ # cd /home/kusanagi/kusanagi01/
/home/kusanagi/kusanagi01 # chmod 755 DocumentRoot/
/home/kusanagi/kusanagi01 # cd DocumentRoot/wp-content/
/home/kusanagi/kusanagi01/DocumentRoot/wp-cotent/uploads/ # find . -type d -exec chmod 775 {} +
/home/kusanagi/kusanagi01/DocumentRoot/wp-content/ # ls -al /home/kusanagi/kusanagi01/DocumentRoot/wp-content/
total 36
drwxr-xr-x    8 kusanagi 1001          4096 Jul 18 13:56 .
drwxr-xr-x    5 kusanagi 1001          4096 Jul 23 14:01 ..
-rw-r--r--    1 kusanagi 1001            28 Jul 18 13:55 index.php
drwxr-x---    4 kusanagi 1001          4096 Jul 18 13:55 languages
drwxr-xr-x    3 kusanagi 1001          4096 Jul 16 10:24 mu-plugins
drwxr-xr-x    4 kusanagi 1001          4096 Jul 26 09:06 plugins
drwxr-xr-x    7 kusanagi 1001          4096 Jul 26 09:05 themes
drwxr-xr-x    2 kusanagi 1001          4096 Jul 26 09:06 upgrade
drwxrwxr-x    3 kusanagi 1001          4096 Jul 23 14:38 uploads

これでまともにWordpressが動くようになりました。
Wordpressに好きなテーマインストールしてカスタマイズして使い倒してください。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1