我正在嘗試在我的本地 Kubernetes 集群(Windows 的 Docker 桌面)中部署一個 knative 服務。當我使用來自 google 云容器注冊表 (gcr.io/knative-samples/helloworld-go) 的影像時,我可以創建一個 knative 服務,但是當我使用來自 docker hub 的影像時,我遇到了一個問題。請注意,我沒有在 Docker 注冊表中使用任何私有存盤庫。
在前 10 分鐘內,reviation.serving 將處于unknown狀態,然后由于ProgressDeadlineExceeded的原因更改為 false 。knative 服務因RevisionMissing原因失敗。我嘗試使用來自 docker hub 的官方 hello-world 影像,回應相同。問題僅在我使用 docker 官方注冊表中的影像時,但現在使用 GCR 時。
下面是我用來創建 knative 服務的 Kubernetes 清單檔案。
apiVersion: serving.knative.dev/v1
kind: Service
metadata:
name: flowbuilder
spec:
template:
metadata:
# This is the name of our new "Revision," it must follow the convention {service-name}-{revision-name}
name: flowbuilder-rev1
spec:
containers:
- image: docker.io/vinaycheguri/flowbuilder:v1
imagePullPolicy: IfNotPresent
ports:
- containerPort: 3007
kubernetes 資源截圖
注意:我使用的是 knative-serving 1.0 版
修訂服務狀態
uj5u.com熱心網友回復:
最后,我通過洗掉 YAML 檔案中的埠會話解決了這個問題。如果包含容器埠,應用程式將在容器中啟動(我已經驗證了日志),但它永遠不會收到流量并因 ProgressDeadlineExceeded 錯誤而失敗。
uj5u.com熱心網友回復:
由于 docker hub 進行身份驗證的方式,您需要遵循使用私有注冊表、創建機密等程序。以下是步驟:https : //knative.dev/docs/serving/deploying-from-private-registry/
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/370063.html
標籤:码头工人 Kubernetes 本地服务
