Apple シリコン環境に PHP 7.3 をインストール
WordPress on Google App Engine が動作する無難なバージョンが PHP 7.3 な感じなので、ローカルの Apple シリコン環境にも PHP 7.3 を用意します。
brew install shivammathur/php/[email protected]
brew link --overwrite --force shivammathur/php/[email protected]
php -v
Apple シリコン環境に cloud-sql-proxy をインストール
ローカルから Google Cloud SQL for MySQL に接続するための Proxy ツールをインストールします。
curl -o ~/bin/cloud-sql-proxy \
https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.1.2/cloud-sql-proxy.darwin.arm64
chmod +x ~/bin/cloud-sql-proxy
~/bin/cloud-sql-proxy -v
Google Cloud SQL for MySQL を作成し DB を準備
Cloud SQL 管理者ロールのサービスアカウントを作成し、saccount.json というファイル名でダウンロードしておきます。
project=mnrwp-dev
instance=wpdb
saccount=saccount.json
gcloud init
gcloud config list
gcloud sql instances create ${instance} \
--activation-policy=ALWAYS \
--tier=db-n1-standard-1 \
--region=asia-northeast1
gcloud sql users set-password root \
--instance ${instance} \
--password ************ \
--host %
~/bin/cloud-sql-proxy \
${project}:asia-northeast1:${instance} \
-c ${saccount}
mysql -h 127.0.0.1 -u root -p
mysql> create database wp;
mysql> create user 'user'@'%' identified by '************';
mysql> grant all on wp.* to 'user'@'%';
mysql> exit
Google App Engine をフレキシブルで作成
まずはフレキシブルで作成してみます。自分の環境だけかもしれませんが、初回だけ gcloud app deploy
に 30 分以上かかりました。
git clone https://github.com/GoogleCloudPlatform/php-docs-samples.git
cd php-docs-samples/appengine/flexible/wordpress
composer install
php wordpress.php setup -n \
--dir=./wordpress-project \
--db_instance=${instance} \
--db_name=wp \
--db_user=user \
--project_id=${project} \
--db_password=************ \
--db_region=asia-northeast1
cd wordpress-project
gcloud app deploy \
--promote \
--stop-previous-version app.yaml
Google App Engine をスタンダードで作成
同じ App Engine にスタンダードで作成します。フレキシブルと違い、gcloud app deploy
はすんなり。
git clone https://github.com/GoogleCloudPlatform/php-docs-samples.git
cd php-docs-samples/appengine/standard/wordpress
composer install
php vendor/bin/wp-gae create
cd my-wordpress-project
code app.yaml # 一行目の runtime: php72 を runtime: php73 に変更
gcloud app deploy app.yaml
タグ: App Engine, Cloud SQL, Google Cloud, PHP, WordPress