TermuxでWordPress
上記の記事の詳細記事です。
ここまででMariaDBとPHPが動作するようになったので、WordPressを設置します。wp-cliを使った方法です。
wp-cliの設置
まずはwp-cliのpharを取得します。
~ $ curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
~ $ php wp-cli.phar --info
OS: Linux 4.19.113-perf-gfe0bf86775e1 #1 SMP PREEMPT Wed Aug 31 00:10:19 CST 2022 aarch64
Shell: /data/data/com.termux/files/usr/bin/bash
PHP binary: /data/data/com.termux/files/usr/bin/php
PHP version: 8.4.2
php.ini used:
MySQL binary: /data/data/com.termux/files/usr/bin/mariadb
MySQL version: /data/data/com.termux/files/usr/bin/mariadb from 11.8.0-MariaDB, client 15.2 for Android (aarch64) using EditLine wrapper
...
~ $
大体合っているようなので、$PREFIX/local/bin
にwpコマンドとして設置します。
~ $ chmod u+x wp-cli.phar
~ $ mkdir -p $PREFIX/local/bin
~ $ mv wp-cli.phar $PREFIX/local/bin/wp
残念ながらパスが通っておらず、任意の場所からwpコマンドを使えないので、パスを通しておきます。
if [[ ":$PATH:" != *":$PREFIX/local/bin:"* ]]; then
PATH+=":$PREFIX/local/bin"
fi
wpコマンドを/usr/local/binに設置し、PATH環境変数に/usr/local/binを追加すべく、$HOME/.bashrcを追加したので、一度termuxを終了して、新しく端末を起動してから以下を引き続き実施します。
~ $ wp --info
(先程と同様の出力であることを確認)
WordPressの設置
WordPressのアーカイブをダウンロードしています。
~ $ mkdir -p wordpress
~ $ cd wordpress
~/wordpress $ php -d memory_limit=512M "$(which wp)" core download --locale=ja
普通に実行するとメモリ許容量を超えてしまうので、一時的にその制限を512MBまで上げて実行しています。
次はMariaDBが稼働している必要があります。MariaDB上にユーザーwordpress
を作成し、データベースwordpress
に対して全権限を与えています。この時点ではデータベースwordpress
はありません。
~/wordpress $ mariadb -u root mysql
...
MariaDB [mysql]> create user 'wordpress'@'localhost' identified by 'wppass';
Query OK, 0 rows affected (0.008 sec)
MariaDB [mysql]> grant all privileges on wordpress.* to 'wordpress'@'localhost';
Query OK, 0 rows affected (0.014 sec)
MariaDB [mysql]> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.006 sec)
MariaDB [mysql]> exit
Bye
作成したユーザーを指定してWordPressの設定ファイルを作り、データベースを作らせ、WordPress稼働に必要な情報を設定していきます。
~/wordpress $ wp config create --dbhost=localhost:/data/data/com.termux/files/usr/var/run/mysqld.sock --dbname=wordpress --dbuser=wordpress --dbpass=wppass
Success: Generated 'wp-config.php' file.
~/wordpress $ wp db create
Success: Database created.
~/wordpress $ wp core install --url=localhost:8080 --title="テストWordPress" --admin_user=wpcli --admin_password=wpcli --admin_email=ユーザー名@有効なドメイン
Success: WordPress installed successfully.
これで日本語版のWordPressの稼働に必要なファイルをカレントディレクトリに置き、データベースも準備することが出来ました(ただしlocalhostをURLとしているので、他のホストからはアクセスできません。モバイルなので、ここは割り切ることにしました。hostファイルなどを使いアクセスし、その名前をバーチャルホストにすることで設定は可能です)。あとはnginxのroot設定を変えるだけです。
root /data/data/com.termux/files/usr/share/nginx/html;
これを以下に書き換えて、
#root /data/data/com.termux/files/usr/share/nginx/html;
root /data/data/com.termux/files/home/wordpress;
すでにnginx/php-fpmが起動中ならnginxを再起動するだけです。
~/wordpress $ pkill nginx
~/wordpress $ nginx
スマホのブラウザから"localhost:8080"を開いてみてください。WordPressの画面が出てくると思います。出てきたら、"localhost:8080/wp-login.php"からwpcli/wpcliでログインすると管理者画面が出てきます。そこで記事を適当に書いて表示させた画面が以下になります。
Discussion