12
9

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

株式会社デジタルクエスト エンジニアAdvent Calendar 2017

Day 10

チョーお手軽になったGAEでPHPを使ってみた話

Last updated at Posted at 2017-12-09

チョーお手軽になったGAEでPHPを使ってみた話

GAEって?

コレ(´v`)

https://console.cloud.google.com/?hl=ja&_ga=2.164364735.-1445835340.1509336477

ss0001.png

「Google App Engine」 略してGAE

Googleが提供している、サーバレスな素敵サービスなのです!

GAEの何がスゴイのか?

サーバレスでしかもちょーお手軽!なホスティングサービス
実はGAEは歴史も長いし、何よりGoogleのサービス
ので、安心感もある!
AWSが登場するまでは、Cloud PaaSのパイオニア的な存在だった!
そして最近リニューアルが急激にすすみ、かなり使いやすくなりつつ
僕の会社で馴染みの言語のPHPが使えるようになったので、会社で注目度が一気にアップ!!

けど・・・お高いんでしょ?

いいえ、イキナリ365日有効な$300分(約¥34,000円分)のクーポンがついてきて

ss0003.png

その後も無料枠がちょー充実していてメチャ安い

詳しくはコチラ ⇒ https://cloud.google.com/free/?hl=ja

と、言うことで使って見ることにしました!

登録はとても簡単!

GAEは「Google Cloud Platform」のサービスの一つ
なので「Google Cloud Platform」に先ず登録をする

https://cloud.google.com

ss0002.png

GAEでPHPを使えるようにするのも簡単!

「Google Cloud Platform」に登録したら、GAE用のプロジェクトを作る

ss0011.png

暫くまってるとプロジェクトが作成されるので、プロジェクトの「App Engine」メニューいき
プロジェクト内に「App Engine」を作成

ss0013.png

今回はPHPなので、言語はPHPを選択する

ss0014.png

なんと日本のリージョンも使えるようになっている!?

ss0015.png

音速で日本を選択して、「Google App Engine」の設定は完了!

早速使うぜGAE!

設定した「Google App Engine」にファイルを上げて、実際にURL経由で実行する手順もとても簡単!

https://cloud.google.com/sdk/docs/からSDKをダウンロードして適当な場所に解凍

ss0021.png

僕は「ユーザー」ディレクトリの下に置きました(´v`)

で、インストールコマンドを実行

./google-cloud-sdk/install.sh
source ~/.bash_profile

色々聞かれるので答えて行くとSDKのインストールは完了!

後はアプリケーションを作ってゆくだけ!

先ず好きなところにフォルダ作ってサーバーの設定を書く

~/workspace/phptest/app.yaml

runtime: php55
api_version: 1

handlers:
- url: /
  script: index.php 
- url: /(.*).php
  script: \1.php 

automatic_scaling:
  min_idle_instances: 1
  max_idle_instances: 1
  max_pending_latency: 2000ms

設定ファイルの書き方は https://cloud.google.com/appengine/docs/standard/php/config/appref この当たりを参考に(´v`)

同じディレクトリにGAE用のphp.iniも置いちゃいます

~/workspace/phptest/php.ini

google_app_engine.enable_functions = "phpversion, phpinfo"

PHPInfoを実行出来るようにする為だけの設定なので、別になくても良いです(´v`)

で、PHPファイルを置く

~/workspace/phptest/info.php

<?php

phpinfo();

?>

そして最後にGAEへファイルを上げて準備完了!

cd ~/workspace/phptest/

移動しておいて、デプロイ(ファイルを上げる)コマンド実行!

gcloud app deploy
╔════════════════════════════════════════════════════════════╗
╠═ Uploading 0 files to Google Cloud Storage                ═╣
╚════════════════════════════════════════════════════════════╝
File upload done.
Updating service [default]...done.                                                                                                                                               
Waiting for operation [apps/xxxx/operations/xxxx-xxxx-xxxx-xxxx-xxxx] to complete...done.                                                               
Updating service [default]...done.                                                                                                                                               
Deployed service [default] to [https://xxxxx.appspot.com]

こんなんになっていればデプロイ成功!

コマンド実行結果にデプロイしたPHPをブラウザから実行出来るURLが記載されているので

後は、なんとそこにアクセスして実行するだけ!

で、https://xxxxx.appspot.com/info.php にアクセスしてみると・・・

ss0022.png

PHPInfoが見れたああああ!!

なんか"Google AppEngine PGP Runtime SAPI"とかそれっぽいの書いてあるーーー!!

スゲェ!! めっさ簡単!!? しかもHTTPSやん!!!

マーベラスですね!

因みにローカル環境での実行・確認もメチャ簡単

cd ~/workspace/phptest/

して

dev_appserver.py .

ってすると・・・

ss0024.png

ってなって http://localhost:8080 でローカルサーバが起動する

なので、http://localhost:8080/info.php にアクセスしてみると・・・

ss0025.png

スッゲェ!! めちゃめちゃ簡単!!

これならガンガンローカル開発して、ガンガンサーバにデプロイ出来るしイイね!(゚∀゚)d

GAEで夢と希望が広がるね!

今回は説明しきれませんでしたが、PHP7を使ったりMySQLライクならDBが使えたり、Dockerコンテナを使えるようになっていたり
色々進化しまくりつつ、どんどん簡単お手軽になっていくGAEは今後も要注目です!

是非触ってみて下さい(´v`)
参考になれば幸いです。

12
9
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
12
9

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?