2017-01-20 5 views
2

Я разрабатываю некоторые службы REST с использованием Flask и других сторонних библиотек, и я хочу развернуть его в GAE в гибкой среде. Обычно я развертываю стандартную среду GAE, но хочу попробовать новую гибкую среду. В настоящий момент я хочу развернуть гибкую среду без возможности оплаты, а поддержка Google заверила меня, что можно было развертывать гибкую среду GAE без возможности выставления счетов.Как развернуть проект GAE в гибкой среде без выставления счетов?

Запуск моего кода локально работает отлично, и имеет следующий YAML файл:

runtime: python 
env: flex 
entrypoint: gunicorn -b :$PORT whereismybus230.starter:app 

runtime_config: 
    python_version: 3 

Так я создал новый проект через веб-страницу облака консоли Google (как обычно), и создал новый профиль gcloud на моей локальной машине, поэтому я развертываю ее в этом новом проекте. Тогда я бегу:

gcloud app deploy --verbosity=info 

я получаю, что Докер образ будучи строить и в какой-то момент будет выталкиваться к Compute Engine, но он терпит неудачу через несколько минут здесь:

Successfully built sophiabus230 aniso8601 future docopt itsdangerous MarkupSafe 
Installing collected packages: Werkzeug, click, MarkupSafe, Jinja2, itsdangerous, Flask, jsonschema, pytz, six, python-dateutil, aniso8601, flask-restplus, beautifulsoup4, future, sophiabus230, coverage, requests, docopt, coveralls 
Successfully installed Flask-0.12 Jinja2-2.9.4 MarkupSafe-0.23 Werkzeug-0.11.15 aniso8601-1.2.0 beautifulsoup4-4.5.3 click-6.7 coverage-4.3.4 coveralls-1.1 docopt-0.6.2 flask-restplus-0.9.2 future-0.16.0 itsdangerous-0.24 jsonschema-2.5.1 python-dateutil-2.6.0 pytz-2016.10 requests-2.12.5 six-1.10.0 sophiabus230-0.4 
---> 3e3438680079 
Removing intermediate container bd9f8ccb6f4a 
Step 8 : ADD . /app/ 
---> bde0915f6720 
Removing intermediate container e3193eb4ef70 
Step 9 : CMD gunicorn -b :$PORT whereismybus230.starter:app 
---> Running in 022d38d769f8 
---> 36893d0a549a 
Removing intermediate container 022d38d769f8 
Successfully built 36893d0a549a 
PUSH 
The push refers to a repository [us.gcr.io/whereismy230/appengine/default.20170120t131841] 
e5f488ee94c5: Preparing 
8d27ce27f03c: Preparing 
3d5800d45c36: Preparing 
06ba8a2a8ec3: Preparing 
c0fb81dae3c6: Preparing 
2e4eabdbeed3: Preparing 
b5d474284f52: Preparing 
c307273999be: Preparing 
d73750730c30: Preparing 
63bbaf04cf0b: Preparing 
badb9b2d625b: Preparing 
40c928fd4dcc: Preparing 
dfcf8dbe47e1: Preparing 
6d820e13990c: Preparing 
2e4eabdbeed3: Waiting 
b5d474284f52: Waiting 
c307273999be: Waiting 
d73750730c30: Waiting 
63bbaf04cf0b: Waiting 
badb9b2d625b: Waiting 
40c928fd4dcc: Waiting 
dfcf8dbe47e1: Waiting 
6d820e13990c: Waiting 
denied: Unable to create the repository, please check that you have access to do so. 
The push refers to a repository [us.gcr.io/whereismy230/appengine/default.20170120t131841] 
... 
ERROR: (gcloud.app.deploy) Error Response: [2] Build failed; check build logs for details 

Использование IAM, я убедился, что моя учетная запись была владельцем проекта и даже проверила все разрешения. Поскольку гибкая среда зависит от вычислительных машин (виртуальных машин), я попытался проверить с веб-страницы, и она говорит мне, что мне нужно включить выставление счетов, чтобы иметь возможность использовать эту функцию.

Я что-то не так? Спасибо!

ответ

2

От App Engine Pricing:

экземпляры в пределах стандартной среды имеет доступ к ежедневному лимиту использования ресурсов, который предоставляется на безвозмездной основе определяется набором из quotas. Помимо этого уровня заявки будут взиматься с , указанных ниже. Чтобы контролировать затраты на приложение, вы можете установить spending limit. Чтобы оценить затраты на стандартную среду, используйте калькулятор цен.

Go to the pricing calculator

Для экземпляров в рамках гибкой среды, услуги и API, которые ценам, как описано ниже.

И от Flexible environment instances:

Приложения, работающие в гибкой среде App Engine являются развернуты на виртуальных типов машин, которые вы укажете. Эта таблица суммирует почасовые счета различных вычислительных ресурсов :

US 
Resource Unit Unit cost 
vCPU per core hour $0.0526 
Memory per GB hour  $0.0071 
Persistent disk per GB per month $0.0400 

В отличии от стандартного окр, гибкий окр не имеет свободную квоты. Что связано с вашим наблюдением, что консоль разработчика требует, чтобы биллинг был включен для запуска экземпляров GAE flex.

без выставления счетов позволил вам мощи быть в состоянии развернуть свое приложение (но фактически не запускает экземпляр GAE для него, так не зная, его полезности, так как вы хотите, чтобы попробовать его), используя --no-promote вариант:

--promote

Продвигайте развернутую версию, чтобы получить весь трафик.

Истина по умолчанию. Чтобы изменить поведение по умолчанию для текущей среды выполнения:

$ gcloud config set app/promote_by_default false 

Overrides значения свойства по умолчанию promote_by_default для этого вызова команды. Используйте --no-promote для отключения.

Сторона примечания: при возникновении проблем вы также можете использовать --verbosity=debug, чтобы потенциально получить более релевантную информацию о сбоях.

+0

Эта информация именно то, что я искал, спасибо за ссылки! Это также подтверждается поддержкой Google. Я в конечном итоге использовал Heroku. – Paraita