GoogleAppEngineでPerlを動かす
GoogleAppEngineは5年前に使ったきり Dockerはよく知らない Perlもまだまだ しかし、ローカル以外の何処かでとりあえず動かしておきたい
こちらを参考にさせていただきました qiita.com
gcloudのインストール
GoogleCloudSDKをインストールします
Google Cloud SDK Documentation | Cloud SDK | Google Cloud Platform
https://cloud.google.com/sdk/docs/#install_the_latest_cloud_tools_version_cloudsdk_current_version
$ tar xvzf google-cloud-sdk-137.0.1-darwin-x86_64.tar.gz $ ./google-cloud-sdk/install.sh $ source .bash_profile #認証 $gcloud auth login
GoogleCloudConsole
プロジェクトを作っておきましょう console.cloud.google.com
gcloudにプロジェクトを設定します(やらなくても大丈夫かと思います)
$ gcloud config set project プロジェクト名
デプロイする
サンプルを利用します ここまでは一緒
$ git clone git@github.com:aql/perl-appengine-sample.git $ cd perl-appengine-sample
SDKの変更があったのか、gcloud preview app --project "foo-bar" deploy .
は動きません
app.yamlの設定を2箇所修正します
diff --git a/app.yaml b/app.yaml index 5ca2107..592d919 100644 --- a/app.yaml +++ b/app.yaml @@ -1,6 +1,5 @@ -version: 1 runtime: custom -vm: true +env: flex api_version: 1
修正後、以下のコマンドでデプロイします
$ gcloud app --project "プロジェクト名" deploy app.yaml
デプロイが完了したら以下のコマンド、またはブラウザから直接開いて確認ができます
$ gcloud app browse
手軽にDockerでperlの環境をGAEに上げることができました perl以外にもdockerコンテナを設定すれば任意の言語等が動きます ちなみにGKE(GoogleComputeEngine)でもDockerを利用できますが、GAEのほうがかんたんにセットアップをすることができました