wordpress on GAEをやってみた
やっぱり AppEngine ja night #2
2017-10-26 ExistMikan
自己紹介
@ExistMikan
・会津大学卒 (福島県)
→ コンピュータ専門大学
・ITベンチャー企業にJOIN
→ スマートフォンアプリ(Android/iOS)開発メイン
・吉積情報株式会社にJOIN (今年)
→ GAE中心の開発へ参加
伊藤勇斗
AppEngine最高!
wordpress on GAEをやってみた
・システム構成
・導入方法
・プロジェクトの用意
・Cloud SQLの設定
・GCSの設定
・deploy, インストール
・運用面
・本体
・プラグイン
・テーマ
・所感
今回の内容
システム構成
wordpress on GAEの構成
一般ユーザ(ブラウザ/スマホ)
コンテンツ画像等投稿データ等
Cloud
SQL
Webサイト 管理画面
wordpress管理者
導入方法
プロジェクトのテンプレート ※1 テンプレート
wordpress本体
AppEngine用プラグイン ※2
batcacheプラグイン ※3
Memcachedプラグイン ※4
wordpress本体 (日本語) ※5
※1. https://github.com/GoogleCloudPlatform/appengine-php-wordpress-starter-project
※3. https://github.com/Automattic/batcache
※5. https://ja.wordpress.org/releases/
※4. https://github.com/jeremyfelt/Memcached-Object-Cache
※2. https://github.com/GoogleCloudPlatform/wordpress-plugins/tree/master/appengine-plugin
プロジェクトの用意
AppEngine用プラグイン
batcacheプラグイン
Memcachedプラグイン
app.yamlなど
ファイル構成
AppEngine用プラグイン ※2
batcacheプラグイン ※3
Memcachedプラグイン ※4
Cloud SQLの設定
GCSの設定
deployとインストール : wp-config.phpの設定
deployとインストール
$gcloud app deploy app.yaml --no-promote --project anyproject --version anyversion
このタイミングでCloudSQLに各種データが入ります
設定が噛み合ってないとインストール画面が表
示されません。接続できませんでした
でおわりなので原因探るのがつらい
login画面と管理画面
domain/wp-login.phpでアクセス
プラグインの有効化
プラグイン画面で
3つのプラグインを
有効にします。
AppEngineプラグインの設定
動作確認 : 画像のアップロード
動作確認 : 投稿を追加した様子
小ネタ:データの中身 (特にGCS連携まわり)
gcsのパスなどもまとめて投稿用のテーブルに保存されている
※gcsに直接画像ファイルをアップロードしても、この登録処理が走らないため、wordpress側のメディアには反映されない
→ バケットをお引っ越しするとか別プロジェクトに移行したいときとか、wordpress側のDBもいじってどうこうする必要がありそうな気配。。
小ネタ:データの中身 (特にGCS連携まわり)
実際に記事中に適用されるリンクは_appengin_imageUrlの値
運用面
本体のアップデート
deploy
必須
wordpressフォルダまるまる
新しくしてdeploy
引き続き使いたいプラグインとかテーマは
退避させて入れ直そう
(もちろんconfigも)
これ毎回手でやるのはしんどいので
何かしらスクリプト組むなりしたほうがいい
gitでこのプロジェクトをバージョン管理するとき
も、wordpress全体も含めてるとサイズ大きくなっ
ちゃうので嫌だ!
プラグインの追加/アップデート
deploy
必須
追加したいプラグインを
wordpress/wp-content/pluginsの下に
配置して、deploy。
そうしてようやく管理画面から
有効化できるようになる。
プラグイン自体が
アップデートされたときも同様。
GAEで内部のファイルが書き換えられない制約が
あるので、そういった挙動を行うプラグインは非対
応!つらい!
GAEに対応してますしてません
というのはもちろん書いてないので
実際に試すしかない状況。。
テーマの追加/アップデート
deploy
必須
追加したいテーマを (ry
カスタムなテーマの動きを確認したいときも当然
deploy
↓
トライ&エラーつらい
↓
テーマの動き(デザイン)の調整は
ローカルにwordpress環境用意して
ひとしきりやったあと GAE反映、
としたほうがで良いかも。。
所感
所感
・VM(GCEとか)上に構築するのと比べると自由度が下がる点が厳しい
→ インストールしておいたからあとは管理画面からよしなによろしく、
とやりにくい。
・GAEのオートスケールなどの恩恵はバッチリなのは嬉しい
・料金に関しては、GCEインスタンス代金は不要だけどCloudSQL分はいつもかかるので
そのあたり比較すると微妙かもしれない
うっかりmanagedに
ならないカナー。。。
吉積情報とクラウドエースでは、一緒に働いてくれる社員を募集しています!
https://www.cloud-ace.jp/
http://www.yoshidumi.com/
WE’RE HIRING!
ご清聴ありがとうございました!

Wordpress on gae se