Google Cloud App Engine
Custom Docker
GoogleAppエンジン(Google Cloud App Engine)にPHPモニタリングエージェントをインストールするには、Custom dockerを使用する必要があります。
GoogleAppエンジンPHPの基本型は、PHP拡張型モジュールおよびサービスデーモンを実行できません。Docker Container経由でインストールしてください。
GoogleAppエンジンの設定ファイルであるapp.yamlファイルにflex
環境、custom
ランタイムを設定してください。
$ vi app.yaml
env: flex
runtime: custom
Custom Dockerで実行するには、flex
環境とcustom
ランタイムで設定されたapp.yamlファイルと同じ場所にDockerfileを作成する必要があります。GoogleAppエンジンの基本php Docker画像を参照してください。
# google-appengine php php56, php70, php71
FROM gcr.io/google-appengine/php56
PHPモニタリングエージェントのインストール
PHPモニタリングエージェントをインストールしてください。
-
ライブラリー(wget)をインストールしてください。
RUN apt-get install wget -y
-
php-fpm実行コマンドのリンクを作成してください。
RUN ln -s /opt/php/sbin/php-fpm /usr/bin/php-fpm
-
WhaTapリポジトリおよび、Whatap-phpパッケージをインストールしてください。
RUN wget http://repo.whatap.io/debian/release.gpg -O -| apt-key add -
RUN wget http://repo.whatap.io/debian/whatap-repo_1.0_all.deb
RUN dpkg -i whatap-repo_1.0_all.deb
RUN apt-get update
RUN apt-get install whatap-php -
PHP拡張モジュールおよびwhatap-phpサービスを設定してください。
#RUN (echo "[発行されたアクセスキー]"; echo "[発行されたサーバーIP]")|/usr/whatap/php/install.sh
RUN (echo "xxxxxxxx"; echo "1.1.1.1/2.2.2.2")|/usr/whatap/php/install.shノートPHPモニタリングプロジェクトの作成後、アクセスキーとサーバーIPが発行されます。_/_を区切り文字として複数のIP発行が可能です。
-
supervisor
を使用してwhatap-phpサービスを実行してくたさい。RUN echo "[program:whatap-php]" >> /etc/supervisor/conf.d/whatap.conf
RUN echo "command = /etc/init.d/whatap-php start" >> /etc/supervisor/conf.d/whatap.conf
RUN echo "stdout_logfile = /dev/stdout" >> /etc/supervisor/conf.d/whatap.conf
RUN echo "stdout_logfile_maxbytes=0" >> /etc/supervisor/conf.d/whatap.conf
RUN echo "stderr_logfile = /dev/stderr" >> /etc/supervisor/conf.d/whatap.conf
RUN echo "stderr_logfile_maxbytes=0" >> /etc/supervisor/conf.d/whatap.conf
RUN echo "user = root" >> /etc/supervisor/conf.d/whatap.conf
RUN echo "autostart = true" >> /etc/supervisor/conf.d/whatap.conf
RUN echo "autorestart = true" >> /etc/supervisor/conf.d/whatap.conf
RUN echo "priority = 10" >> /etc/supervisor/conf.d/whatap.conf
ファイアウォールルールの追加
GoogleAppエンジンで使用するネットワークのファイアウォールルールを追加してください。発行されたサーバーIPに対して6600番ポートを経由してTCP送信を許可する必要があります。
配布およびインスタンスの確認
Google Cloud SDKを使用して設定されたapp.yamlファイルとDockerfileをデプロイしてください。
$ gcloud app deploy
Googleクラウドコンソールからアプリエンジンのインスタンスを確認してください。