2
I'm migrating my standard environment app to flexible environment in GAE and facing issues.

app.yaml スニペット

runtime: custom
env: flex
api_version: 1
threadsafe: true

handlers:

- url: /.*
  script: main.app

Dockerfile

FROM gcr.io/google_appengine/python-compat-multicore
RUN apt-get update -y
RUN apt-get install -y python-pip build-essential libssl-dev libffi-dev python-dev libxml2-dev libxslt1-dev xmlsec1

RUN apt-get install -y curl unzip
RUN curl https://dl.google.com/dl/cloudsdk/release/google-cloud-sdk.tar.gz > /tmp/google-cloud-sdk.tar.gz
RUN mkdir -p /usr/local/gcloud
RUN tar -C /usr/local/gcloud -xvf /tmp/google-cloud-sdk.tar.gz
RUN /usr/local/gcloud/google-cloud-sdk/install.sh

RUN curl https://storage.googleapis.com/appengine-sdks/featured/google_appengine_1.9.40.zip > /tmp/google_appengine_1.9.40.zip
RUN unzip /tmp/google_appengine_1.9.40.zip -d /usr/local/gae

ENV PATH $PATH:/usr/local/gcloud/google-cloud-sdk/bin
ENV PATH $PATH:/usr/local/gae/google_appengine/
COPY . /app
WORKDIR /app

ENV MODULE_YAML_PATH app.yaml

RUN pip install -r requirements.txt

gcloud app deploy (スタック トレース) の実行中の問題

 File "/env/local/lib/python2.7/site-packages/google/appengine/ext/vmruntime/vmconfig.py", line 63, in BuildVmAppengineEnvConfig
    escaped_appid = appid.replace(':', '_').replace('.', '_')
AttributeError: 'NoneType' object has no attribute 'replace'

dockerfile に欠けているものはありますか? アプリケーション レベルのコード変更があまりないようにするために行う必要があるその他の構成変更は何ですか。フレキシブル環境で webapp2 を使用することをお勧めしますか?

4

1 に答える 1

0

より良いエラー メッセージに取り組んでいますが、これは python-compat-multicore ランタイムを使用しようとしているために発生しています。そのランタイムはenv:flex ではサポートされておらず、非推奨になっています。このガイドに従って、runtime:python にアップグレードするようお願いしています。

https://cloud.google.com/appengine/docs/flexible/python/migrating

于 2016-11-30T06:12:03.510 に答える