Я использую nodejs в appengine. Во вторник у нас был совершенно стабильный каркас приложения, а к пятнице он был полностью сломан после попытки развертывания. Мы внесли некоторые незначительные изменения в код внешнего интерфейса, но я не думаю, что ничего, что могло бы помешать запуску экземпляра.
Вот шаги для воспроизведения.
gcloud --project "{appname}" preview app deploy
журналы показывают установку npm, сборку контейнера и т. д.
Висит на Updating service [default]...
на 5 минут
Сбой с ошибкой.
ОШИБКА: (gcloud.preview.app.deploy) Ответ об ошибке: [13] Истекло время ожидания при запуске виртуальных машин. Возможно, код приложения неработоспособен. (0/1 готово, 1 все еще развертывается).
Я попытался вернуть репозиторий к состоянию, когда у нас были стабильные развертывания, и это не помогло. Это заставляет меня думать, что что-то в GCP не работает.
Я попытался удалить все текущие версии, а затем развернуть, но безрезультатно.
Когда вы получаете эту ошибку, вы можете взглянуть на crash.log в облачной консоли. Просмотр журналов (Ведение журнала -> Журналы) для вашей конкретной службы / версии, которая обычно сообщает вам, что именно произошло. В моем случае, когда я воспроизвел ту же ошибку, crash.log показывает мне вывод NPM, который сообщает мне, что у меня есть «SyntaxError: Unexpected identifier».
YMMV, конечно, но это может сказать вам, связана ли проблема с кодом вашего приложения или происходит что-то более зловещее.
Для меня ответ был другим ... Версия начала создаваться, но так и не закончила процесс создания. Этот сценарий виден, если вы войдете в журналы для своей службы AppEngine (отметьте все параметры, чтобы увидеть ВСЕ журналы), и вы можете заметить «Контейнер с именем exit (1)».
В моем случае я обнаружил, что запуск «gcloud init» для сброса моих учетных данных помог. Надеюсь, это поможет кому-то другому.
Поцарапайте это ... Я обнаружил, что Cloud Build API просто ПУТЬ позади / медленно. Это происходило последние пару часов. Я только что заметил, что на моей приборной панели сразу появилось 4 версии с предыдущих часов вечера. Видимо нет возможности отменить предыдущие развертывания? Как ни странно, когда служба сборки Google отстает все вероятно, начинает рассылать спам / повторять попытки развертывания, и проблема усугубляется ... так плохо.
Убедитесь, что в вашем package.json есть этот раздел
"cloud-repo-tools": {
"test": {
"app": {
"msg": "Hello, world!"
}
},
"requiresKeyFile": true,
"requiresProjectId": true
}
с разделом «msg», содержащим некоторую строку, которую может искать проверка работоспособности. Не удалось найти для этого документацию, поэтому, если кто-то еще найдет, я бы с удовольствием ее увидел.