2

私はdjangoチャンネルに取り組んでおり、それらをGoogleフレックスエンジンにデプロイしているときに問題が発生しました.最初に「デプロイが割り当てられた時間内に正常になることができませんでした」というエラーが発生し、app.yamlにreadiness_checkを追加することで解決しました.以下のエラー:

(gcloud.app.deploy) オペレーション [apps/socketapp-263709/operations/65c25731-1e5a-4aa1-83e1-34955ec48c98] がタイムアウトしました。この操作はまだ進行中の可能性があります。

App.yaml

runtime: python
env: flex
runtime_config:
  python_version: 3
instance_class: F4_HIGHMEM

handlers:
# This configures Google App Engine to serve the files in the app's
# static directory.
- url: /static
  static_dir: static/
- url: /.*
  script: auto
# [END django_app]

readiness_check:
  check_interval_sec: 120
  timeout_sec: 40
  failure_threshold: 5
  success_threshold: 5
  app_start_timeout_sec: 1500

この問題を解決するにはどうすればよいですか、何か提案はありますか?

4

1 に答える 1

4

次のエラーは、いくつかの問題が原因です。

1) app.yaml ファイルを正しく構成していません。App Engine フレキシブルでのリソース リクエストは、instance_class オプションによるものではありません。リソースをリクエストするには、次のようなリソース オプションを使用する必要があります。

resources:
  cpu: 2
  memory_gb: 2.3
  disk_size_gb: 10
  volumes:
   - name: ramdisk1
     volume_type: tmpfs
     size_gb: 0.5

2) アプリのエントリポイントがありません。Django チャネルをデプロイするには、Daphne サーバーのエントリポイントを用意することをお勧めします。次のコードを app.yaml に追加します。

entrypoint: daphne -b 0.0.0.0 -p 8080 mysite.asgi:application

3) 前の手順を実行しても同じエラーが発生する場合は、App Engine フレキシブル アプリケーションのリージョンで使用中の IP アドレスの割り当てが制限に達している可能性があります。この問題を確認するには、プロジェクトのホームページの [アクティビティ] タブに移動します。クォータ制限と VM の作成に失敗するという警告が表示されます。

App Engine はデフォルトでアプリの以前のバージョンを残し、それを実行すると IP アドレスが必要になる場合があります。以前のバージョンを削除したり、IP アドレスのクォータ制限の引き上げをリクエストしたりできます。

また、問題を解決する可能性のある gcloud ツールと SDK を更新します。

使用中のアドレスを確認するには、 ここをクリックします。Cloud Console の [割り当ての編集] ボタンをクリックして、割り当てを増やすことができます。

于 2020-01-10T13:02:18.707 に答える