Infrastructure using kubernetes with FluxCD to configure apps easily and deploy them on my home server (FunnyServer).
- Commit & push.
- Tell Flux to pull/apply now:
# Prod & Staging (adjust names/namespaces if different)
flux reconcile kustomization prod -n flux-system --with-source
flux reconcile kustomization staging -n flux-system --with-source
# watch health
flux get kustomizations -A
flux tree kustomization prod -n flux-system
Existing pods won’t see that change—roll them:
kubectl -n prod rollout restart deploy/log680
kubectl -n staging rollout restart deploy/log680
kubectl -n prod rollout status deploy/log680
kubectl -n staging rollout status deploy/log680
Just nuke the failing pods so they re-pull:
kubectl -n prod delete pod -l app=log680
kubectl -n staging delete pod -l app=log680
kubectl -n prod get pods -w
Force the automation to refresh tags and commit, then apply:
flux reconcile imagerepository metrics -n flux-system
flux reconcile imagerepository mobilitysoft -n flux-system
flux reconcile imagepolicy metrics-prod -n flux-system
flux reconcile imagepolicy mobilitysoft-prod -n flux-system
# pull the new commit into the cluster
flux reconcile kustomization prod -n flux-system --with-source
# Confirm the live images on the Deployment
kubectl -n prod get deploy log680 -o jsonpath='{range .spec.template.spec.containers[*]}{.name}{" => "}{.image}{"\n"}{end}'
# If it still fails, show the exact pull error
kubectl -n prod describe pod $(kubectl -n prod get pod -l app=log680 -o name | head -n1) | sed -n '/Events:/,$p'