registry에 이미지 push할때 'permission denied' 에러 나는 경우

2025. 8. 10. 23:27k8s

실제 이미지가 존재하는 디렉토리의 권한을 확인 및 변경

# 권한이 불일치하는 디렉토리 확인
kubectl -n registry exec -it registry-0 -- sh -c 'find /var/lib/registry -not -user 1000 -o -not -group 1000 | head -n 20'

# 존재하면 NFS의 실제 디렉토리 권한 변경
chown -R 1000:1000 /nfs/registry

registry pod의 실행 권한 변경

spec:
  template:
    spec:
      securityContext:
        fsGroup: 1001
        fsGroupChangePolicy: "OnRootMismatch"
      containers:
      - name: registry
        securityContext:
          runAsUser: 1001
          runAsGroup: 1001

테스트

sudo nerdctl pull busybox:latest
sudo nerdctl tag busybox:latest registry.gift1000.co.kr/test:tiny
sudo nerdctl push registry.gift1000.co.kr/test:tiny