개인 컨테이너 레지스트리로 감독자 서비스를 재배치합니다.

사전 요구 사항

개인 컨테이너 이미지 레지스트리가 있는지 확인합니다.

프로시저

  1. Carvel imgpkg 유틸리티를 설치합니다.
    1. imgpkg 설치
      wget -O- https://carvel.dev/install.sh > install.sh
      sudo bash install.sh
      
    2. 설치를 확인합니다.
      imgpkg version
      
    Carvel imgpkg 유틸리티에 대한 자세한 내용은 https://carvel.dev/imgpkg/docs/v0.42.x/install/에서 참조하십시오.
  2. 서비스에 대한 YAML 매니페스트를 가져옵니다.

    imgpkg 번들을 찾습니다.

    Contour 예제는 다음과 같습니다.

    template:
      spec:
        fetch:
        - imgpkgBundle:
            image: projects.registry.vmware.com/tkg/packages/standard/contour:v1.24.4_vmware.1-tkg.1
  3. 해당 imgpkg 번들의 tar를 다운로드합니다.
    imgpkg copy -b projects.registry.vmware.com/tkg/packages/standard/contour:v1.24.4_vmware.1-tkg.1 --to-tar contour-v1.24.4.tar --cosign-signatures
    
    중요: pushpull 명령은 참조되는 모든 이미지를 끌어오지 않으므로 copy 명령을 사용하여 이미지를 재배치해야 합니다.
  4. imgpkg 번들을 개인 컨테이너 이미지 레지스트리에 업로드합니다.
    imgpkg copy --tar contour-v1.24.4.tar --to-repo ${registry_url}/contour --cosign-signatures
    참고: imgpkg는 시스템의 신뢰 설정 및 Docker의 인증 구성을 준수합니다. 레지스트리에 인증이 필요한 경우 먼저 Docker CLI 명령 docker login ${registry_url}로 로그인합니다.
  5. imgpkg 번들에 대한 새 URL로 감독자 서비스 YAML을 업데이트합니다.
    예:
    template:
      spec:
        fetch:
        - imgpkgBundle:
            image: n.n.n.n/contour:v1.24.4_vmware.1-tkg.1