GAE/SE (1st Gen) Python2環境のアプリを修正、動作確認する機会がありました。
ほぼ公式ドキュメントから実際にやったことを抜き出したメモです。
環境構築
- Python 用の App Engine 拡張機能が含まれている gcloud コンポーネントをインストール
gcloud components install app-engine-python
- ローカルのPython2系の環境をアップデート
- virtualenv を使用して依存関係をインストール
$ virtualenv env
$ source env/bin/activate
$ cd YOUR_PROJECT
$ pip install -t lib -r requirements.txt
サンプルを動かしてみる
git clone https://github.com/GoogleCloudPlatform/python-docs-samples
CLOUDSDK_PYTHON=python2.7 [google-cloud-sdk]/bin/dev_appserver.py --application=sensytracker app.yaml
ローカルでアプリを動かす
https://cloud.google.com/appengine/docs/standard/python/tools/using-local-server?hl=ja を参考にする。
デプロイする
Python 2 スタンダード環境で使ってみる のアプリケーションをデプロイする
のままだと、デプロイと同時にトラフィックの切り替わってしまうので、gcloud app deploy
の前に以下のコマンドを実行しましょう。
$ gcloud config set app/promote_by_default false
詳しくは以下のリファレンスを参照
https://cloud.google.com/sdk/gcloud/reference/app/deploy