Google App Engineの登録
Pycharmの準備
必須では無い
プロジェクトファイルの準備
"hello world!" を表示させるだけのプロジェクト
\python-docs-samples-master\appengine\standard_python37\hello_world
- app.yaml
- main.py
- main_test.py
- requirement.txt
- Cloud SDK をインストール
- Cloud SDK をダウンロードしてインストールします。
- SDK をダウンロード
- Cloud SDK がすでにインストールされている場合は、次のコマンドを実行して更新 : gcloud components update
- 新しいプロジェクトを作成します。
- 新しいプロジェクトを作成 : gcloud projects create [YOUR_PROJECT_ID] --set-as-default
- プロジェクトが作成されたことを確認します : gcloud projects describe [YOUR_PROJECT_ID]
- アプリケーションを作成? : gcloud app create --project=[YOUR_PROJECT_ID]
- App Engine アプリケーションを配置するリージョンを選択
- 東京 : asia-northeast1
- 大阪 : asia-northeast2
- https://cloud.google.com/appengine/docs/locations?hl=ja
- 課金を有効にする
- サンプルアプリを実行しても無料の割り当てを超えることはない。それほどトラフィックが無いから
- サンプルプロジェクトを持ってくる
- GitかZIPでダウンロードか。 をダウンロードしてインストールします。
- Python 3.7 用の App Engine 拡張機能が含まれる gcloud コンポーネントをインストールします : gcloud components install app-engine-
Python 3.7 用のシンプルな Hello World アプリが用意されています。
- このサンプルでは Flask を使用
- 代わりに使用できるフレームワークとしては、Django、Pyramid、Bottle、web.py などが挙げられます。
- サンプルプログラムをローカルで実行
プロジェクト ディレクトリに移動し、依存関係をインストールします。
cd YOUR_PROJECT
pip install -r requirements.txt
- Hello World を App Engine にデプロイして実行する
- hello_world プロジェクトのディレクトリで次のコマンドを実行
- gcloud app deploy --project [YOUR_PROJECT_ID]
- ブラウザを起動し、http://YOUR_PROJECT_ID.appspot.com にアクセスしてアプリを表示します。
- 次でも立ち上がる : gcloud app browse --project=[YOUR_PROJECT_ID]
詰まったところ
デプロイしても、サーバでエラー
- code : 500
- デプロイにて、エラーメッセージが出ている
UnicodeDecodeError: 'ascii' codec can't decode byte 0x8e in position 10: ordinal not in range(128)
- でも、日本語で書いた部分は一切ないし(どこかに全角スペースが紛れ込んでいる、ということもなさそう)
- デプロイでのエラーは消えないが、どこかのタイミングで解消。わからない。
最終更新:2020年08月01日 21:06