diff options
| author | Paul Buetow <paul@buetow.org> | 2026-02-15 14:28:03 +0200 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2026-02-15 14:28:03 +0200 |
| commit | 36914e0c242bf9e727da4b30dfe180cc968eb43a (patch) | |
| tree | bb9b682b5367387bff1ae02bf54e90cd51800d6e /f3s | |
| parent | 3cf3637cce1a561214973612378fec15d27fbb7e (diff) | |
Add health probes to registry deployment to auto-recover from stale NFS mounts
Added startup, liveness, and readiness probes to the docker registry deployment.
The liveness probe will automatically restart the pod when it returns 503 errors
(which happens when NFS storage becomes stale), preventing prolonged ImagePullBackOff
issues for dependent services like radicale and git-server.
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Diffstat (limited to 'f3s')
| -rw-r--r-- | f3s/registry/helm-chart/templates/deployment.yaml | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/f3s/registry/helm-chart/templates/deployment.yaml b/f3s/registry/helm-chart/templates/deployment.yaml index 70522f8..ae3397f 100644 --- a/f3s/registry/helm-chart/templates/deployment.yaml +++ b/f3s/registry/helm-chart/templates/deployment.yaml @@ -20,6 +20,31 @@ spec: image: registry:2 ports: - containerPort: 5000 + # Startup probe: give registry time to initialize (especially if NFS is slow) + startupProbe: + httpGet: + path: /v2/ + port: 5000 + initialDelaySeconds: 5 + periodSeconds: 5 + timeoutSeconds: 3 + failureThreshold: 12 # 60 seconds total (12 * 5s) + # Liveness probe: restart pod if registry returns 503 (stale NFS) or becomes unresponsive + livenessProbe: + httpGet: + path: /v2/ + port: 5000 + periodSeconds: 30 + timeoutSeconds: 5 + failureThreshold: 3 # Restart after 90 seconds of failures + # Readiness probe: remove from service if not ready + readinessProbe: + httpGet: + path: /v2/ + port: 5000 + periodSeconds: 10 + timeoutSeconds: 3 + failureThreshold: 2 volumeMounts: - name: registry-storage mountPath: /var/lib/registry |
