summaryrefslogtreecommitdiff
path: root/f3s
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2026-02-15 14:28:03 +0200
committerPaul Buetow <paul@buetow.org>2026-02-15 14:28:03 +0200
commit36914e0c242bf9e727da4b30dfe180cc968eb43a (patch)
treebb9b682b5367387bff1ae02bf54e90cd51800d6e /f3s
parent3cf3637cce1a561214973612378fec15d27fbb7e (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.yaml25
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