日復一日,我突然無法再將我的 golang 專案部署到 appengine。我在日誌中收到此錯誤訊息:
step #2 - "build": status: downloaded newer image for eu.gcr.io/gae-runtimes/buildpacks/google-gae-18/go/builder:go_20230305_rc00 step #2 - "build": eu.gcr.io/gae-runtimes/buildpacks/google-gae-18/go/builder:go_20230305_rc00 step #2 - "build": ===> analyzing step #2 - "build": error: failed to initialize analyzer: getting previous image: getting config file for image "eu.gcr.io/staticform/app-engine-tmp/app/www/ttl-18h:latest": get https://storage.googleapis.com/eu.artifacts.staticform.appspot.com/containers/images/sha256:af3ff480dc0053108a52bf8b7ec3e45893e4e97c507102ff524b07bc01e03249?access_token=redacted: unexpected status code 404 not found: <?xml version='1.0' encoding='utf-8'?><error><code>nosuchkey</code><message>the specified key does not exist.</message><details>no such object: eu.artifacts.staticform.appspot.com/containers/images/sha256:af3ff480dc0053108a52bf8b7ec3e45893e4e97c507102ff524b07bc01e03249</details></error> finished step #2 - "build" error error: build step 2 "eu.gcr.io/gae-runtimes/buildpacks/google-gae-18/go/builder:go_20230305_rc00" failed: step exited with non-zero status: 1
首先我以為 go 1.11 終於停用了,但改為 1.19 並沒有解決問題。使用新服務名稱進行部署似乎可行,但更新現有服務則不行。即使我更改了服務版本。
我用我的兩個 golang 項目對其進行了測試(其中一個沒有任何更改)。我的 java 專案部署得很好。
這是我的部署指令:
gcloud app deploy --project=staticform --version=1 app.yaml
更新:
這是我的 app.yaml
:
runtime: go111 automatic_scaling: min_idle_instances: 0 max_instances: 1 handlers: - url: /.* script: auto secure: always - url: /admin/.* script: auto secure: always login: admin
事實證明我所需要的只是 --no-cache
選項。我不知道為什麼,我也不關心。 ;)
因此使用此命令部署成功:
gcloud app deploy --project=staticform --version=1 --no-cache app.yaml
以上是我突然無法再將 GoLang 應用程式部署到 Google AppEngine的詳細內容。更多資訊請關注PHP中文網其他相關文章!