Repository navigation
ClusterImageSetMirror does not work with private repos #606
Copy link
Copy link
Open
Labels
Description
here are my setup
apiVersion: kuik.enix.io/v1alpha1
kind: ClusterImageSetMirror
metadata:
annotations:
argocd.argoproj.io/sync-wave: "10"
argocd.argoproj.io/tracking-id: tools-dev-kube-image-keeper-v2:kuik.enix.io/ClusterImageSetMirror:kuik-system/kuik-global-mirror
creationTimestamp: "2026-06-05T17:37:37Z"
finalizers:
- kuik.enix.io/secret-cleanup
- kuik.enix.io/mirror-cleanup
generation: 5
name: kuik-global-mirror
resourceVersion: "1130033109"
uid: c8cacd2a-bf23-4404-b1b7-5f57c629225a
spec:
cleanup:
enabled: false
retention: 168h0m0s
imageFilter:
exclude:
- ^localhost[^/]+/.+
- ^[0-9]{12}\.dkr\.ecr\.[^.]+\.amazonaws\.com/.+
- ^docker\.io/goharbor/.+
- ^quay\.io/apicurio/apicurio-registry-3-operator.+
include:
- .*
mirrors:
- credentialSecret:
name: ecr-push-creds
namespace: kuik-system
path: /kuik-cache
registry: <awsAccountId>.dkr.ecr.us-east-2.amazonaws.com
priority: -1
I've also ClusterReplicatedImageSet
apiVersion: kuik.enix.io/v1alpha1
kind: ClusterReplicatedImageSet
metadata:
annotations:
argocd.argoproj.io/sync-wave: "10"
argocd.argoproj.io/tracking-id: tools-dev-kube-image-keeper-v2:kuik.enix.io/ClusterReplicatedImageSet:kuik-system/dockerhub
creationTimestamp: "2026-06-06T18:06:01Z"
finalizers:
- kuik.enix.io/secret-cleanup
generation: 2
name: dockerhub
resourceVersion: "1130019302"
uid: ad8d3a17-398a-46a1-ac29-563d220d810f
spec:
upstreams:
- credentialSecret:
name: dockerhub-image-pull
namespace: kuik-system
imageFilter:
include:
- ^/.+
path: /
registry: docker.io
and my pods are also have the imagePullSecrets set, the pod are running just fine, just KUIK can't cache the image
all return with UNAUTHORIZED from docker.io
{"level":"error","ts":"2026-06-06T18:27:42Z","msg":"could not mirror image","controller":"kuik-clusterimagesetmirror","controllerGroup":"kuik.enix.io","controllerKind":"ClusterImageSetMirror","ClusterImageSetMirror":{"name":"kuik-global-mirror"},"namespace":"","name":"kuik-global-mirror","reconcileID":"88c8dcdd-8ee1-4813-a7a4-acdb6eefd6e3","from":"docker.io/actian/cloudops-utils:1.0.13","to":"135371550061.dkr.ecr.us-east-2.amazonaws.com/kuik-cache/actian/cloudops-utils:1.0.13","error":"GET https://index.docker.io/v2/actian/cloudops-utils/manifests/1.0.13: UNAUTHORIZED: authentication required; [map[Action:pull Class: Name:actian/cloudops-utils Type:repository]]"}
Reactions are currently unavailable
Activity
[-]ClusterImageSetMirror does not work with private repo[/-][+]ClusterImageSetMirror does not work with private repos[/+]plaffitt commentedon Aug 18, 2026
Hello, thanks a lot for the report, and sorry for the trouble.
v2 is in maintenance phase (bugfixes only), and this clearly qualifies as a bug, so a fix is very welcome. Your PR #608 is on the right track; I posted review feedback over there.
EDIT: For the record, the "keychain repo-name mismatch" issue described in #608 must be fixed as we will face the same issue in v3. However, the "source credentials declared on (Cluster)ReplicatedImageSet are never used" is considered to be an edge case of v2 and will not even exists in v3 (CRDs are completely reworked and this interdependency completely disappear by design). Thus, we will not actively work on fixing it. That being said, any clean PR fixing the issue is welcome and will be reviewed for merging.
donch commentedon Oct 6, 2026
Hello @ttruong-actian ! As Paul mentioned, we are currently actively developing v3 of kuik. If you'd like, feel free to open a pull request against the
2.3.xbranch.