Appengine卡在“更新服務def一個___d和F一種在l噸default……”
我在 appengine 上使用 nodejs。週二我們有一個非常穩定的應用程序腳手架,到週五它在嘗試部署後完全崩潰了。我們對前端程式碼做了一些小改動,但我認為沒有什麼可以阻止實例啟動。
以下是重現的步驟。
gcloud --project "{appname}" preview app deploy
- 日誌顯示 npm 安裝、容器建構等。
- 持續
Updating service [default]...
5 分鐘- 因錯誤而失敗。
錯誤:(gcloud.preview.app.deploy)錯誤響應:
$$ 13 $$啟動虛擬機時超時。應用程式碼可能不健康。(0/1 準備就緒,1 仍在部署中)。
我曾嘗試將儲存庫恢復到我們有穩定部署的時候,但它沒有幫助。這讓我覺得 GCP 上的某些東西壞了。
我曾嘗試刪除所有目前版本,然後進行部署,但無濟於事。
當您收到此錯誤時,您可以在 Cloud Console日誌查看器(日誌記錄 -> 日誌)中查看您的特定服務/版本的 crash.log,它通常會準確地告訴您發生了什麼。就我而言,當我重現相同的錯誤時,crash.log 會顯示 NPM 的輸出,告訴我我有一個“SyntaxError: Unexpected identifier”。
當然是 YMMV,但這可以告訴您問題是否與您的應用程式碼有關,或者是否有更險惡的事情發生。
對我來說答案是不同的……版本開始被創建但從未完成創建過程。如果您進入 AppEngine 服務的日誌(檢查所有選項以查看所有日誌),則可以看到這種情況,並且您可能會注意到“Container called exit(1)”。
就我而言,我發現執行“gcloud init”來重置我的憑據很有幫助。希望這對其他人有幫助。
從頭開始……我發現 Cloud Build API 只是落後/緩慢。過去幾個小時一直在發生這種情況。我剛剛注意到從晚上的前幾個小時開始,我的儀表板同時出現了 4 個版本。顯然沒有辦法取消之前的部署?具有諷刺意味的是,一旦 Google 的建構服務落後於所有人,每個人都可能開始發送垃圾郵件/重試他們的部署,並且問題變得更糟……太糟糕了。